加载中...
Linux 命令行(Shell)是通过文字指令与操作系统交互的界面,Bash 是最广泛使用的 Shell。熟练的命令行操作能力是后端开发者和运维工程师的核心素养,管道与重定向让简单命令组合出强大能力。
| 类型 | 命令行界面与脚本环境 |
| 主流 Shell | Bash、Zsh、Fish |
| 标准 | POSIX |
Unix 哲学:每个工具做好一件事,用管道(|)将工具串联。grep(文本过滤)、awk(结构化文本处理)、sed(流编辑器)、sort、uniq、wc 组合起来,几乎能处理所有日志分析场景。
示例:统计 Nginx 访问日志中各状态码的出现次数:awk '{print $9}' access.log | sort | uniq -c | sort -rn。这种组合能力让 Shell 在数据量不超过数百 MB 的场景下比写 Python 脚本更快捷。[1]
find . -name "*.log" -mtime +30 | xargs rm 删除 30 天前的日志。--delete 删除目标多余文件,-z 传输时压缩,是备份和部署的常用工具。近年来出现了一批现代替代命令:ripgrep(比 grep 快数倍,默认忽略 .gitignore)、fd(比 find 更直观的语法)、bat(带语法高亮的 cat)、eza(带图标和 Git 状态的 ls)、fzf(模糊查找,可接入命令历史、文件选择)。这些工具并不取代基础命令,但在交互式使用时体验提升显著。
| 类型 | 命令行界面与脚本环境 |
| 主流 Shell | Bash、Zsh、Fish |
| 标准 | POSIX |
登录 后参与讨论
暂无讨论,来发表第一条评论吧