进阶实战:命令行生存指南

如果你想成为 Linux 高手,就必须把终端当作自己的双手。本章节将教你如何跳出“一个命令一个命令敲”的初级阶段,学会利用 Shell 的强大特性进行批量化、自动化的文件操作。


1. 文件操作的“降维打击”

掌握通配符(Wildcards),让你的指令一次处理成千上万个文件。

  • *: 匹配任意长度的字符串(如 rm *.log 删除所有日志)。
  • ?: 匹配单个字符。
  • {}: 集合匹配(如 touch {a,b,c}.txt 同时创建三个文件)。
⚠️ 安全警告:慎用 rm -rf

执行 rm -rf 前,务必再次确认路径! 小技巧: 习惯先用 ls 命令配合通配符预览要删除的文件,确认无误后按 上方向键ls 改为 rm


2. 内容预览与基础管理

除了 ls, cd, cp, mv, rm 外,这些命令是日常高频必备:

2.1 快速预览文件

  • cat: 一次性打印全量内容(适合短文件)。
  • less: 分页查看(适合长文件,按 q 退出)。
  • head -n 5: 只看前 5 行。
  • tail -f: 实时监控(常用于查看不断增长的日志文件)。

2.2 目录与空间管理

  • mkdir -p: 递归创建目录(如 mkdir -p a/b/c)。
  • df -h: 查看磁盘分区剩余空间(人类易读格式)。
  • du -sh: 查看当前目录或文件的总占用大小。

3. IO 重定向:数据流的指挥官

Linux 的每一个命令都有三个标准流:标准输入(stdin)、标准输出(stdout)、标准错误(stderr)。

将结果存入文件,覆盖原内容:

ls > file_list.txt

在文件末尾添加内容:

echo "Append this" >> config.log

将 A 命令的输出直接喂给 B 命令作为输入:

ps aux | grep firefox

4. 高效搜索与定位

4.1 找文件:find

# 在 /home 下查找大于 100MB 的文件
find /home -size +100M

4.2 找内容:grep

# 在当前目录下所有文件中查找 "Error" 字符串
grep -rn "Error" .

5. 归档与权限神操作

5.1 归档工具:tar

# 压缩:将 folder 文件夹压缩为 archive.tar.gz
tar -czvf archive.tar.gz folder/
 
# 解压:解压到当前目录
tar -xzvf archive.tar.gz

5.2 必备权限

除了 chmod 777(极其不推荐),你应该学会精确管理权限:

命令作用示例
chown改变所有者sudo chown susu:susu file.txt
chmod改变读写执行权限chmod +x script.sh (赋予执行权)
sudo -i切换到 root 环境类似 Windows 的“以管理员身份运行”

6. 结业练习

Navigation