适用:所有 Linux(命令通用) 耗时:约 30 分钟 前置:D1-D5(能开终端)

前五天你可能已经敲过几次终端了。今天正式认识它。只学 10 条,够用半年。


一、先解决三个心理问题

「命令行是不是很危险?」

不危险,只要不敲 sudo rm -rf /。 而且你现在还不会敲。

真正危险的是三条:

  • rm -rf —— 删除,没有回收站
  • dd —— 直接写磁盘,写错盘就没了
  • mkfs —— 格式化

这三条今天一次都不碰。其他命令敲错了最多报个错,不会坏。

「记不住怎么办?」

不用记。 今天这 10 条用一周自然就记住了。其他的都是查到就用的。

按 ↑ 上箭头 能翻出你敲过的历史命令——这是最有用的一个操作,比记住任何命令都有用。

「终端和 Windows 的 cmd 有什么区别?」

Windows 的 cmd 是"半个废柴",Linux 终端是"主控制台"。Linux 里终端能干所有事——这也是为什么服务器上根本不装图形界面。


二、先搞懂「当前在哪」

终端里的所有操作都是**相对于"当前目录"**的。所以第一个要会的是"我在哪"。

pwd

输出类似 /home/zhangsan —— 就是"我现在在这个文件夹里"。

记住这个路径:/home/你的用户名 是你的地盘,你 99% 的操作都在这里。


三、10 条最有用的命令

1. ls —— 看看这里有什么

ls              # 列出当前目录
ls -l           # 详细列表(权限、大小、时间)
ls -lh          # 详细列表 + 文件大小带单位(K/M/G)
ls -a           # 包括隐藏文件(. 开头的)
ls /etc         # 看指定目录

最常用的是 ls -lh。

为什么文件大小带单位重要:ls -l 显示的是字节数(7458462),ls -lh 显示 7.1M,一目了然。

2. cd —— 换目录

cd /var/log      # 进入 /var/log
cd               # 不带参数 = 回主目录(最常用)
cd ..            # 上一级
cd -             # 回上一个待过的目录(来回跳,很好用)
cd ~/桌面        # ~ 代表 /home/你的用户名

小技巧:敲 cd 文 然后按 Tab 键,会自动补全成 cd 文档/。 Tab 补全是 Linux 最伟大的发明,任何路径、任何命令都能补全。养成习惯:能按 Tab 就别手打。

3. cat / less —— 看文件内容

cat 文件.txt           # 全文打到屏幕上(小文件用)
less 文件.txt          # 分页查看(大文件用这个)

less 里面:

  • 空格 → 下一页
  • b → 上一页
  • /关键词 → 搜索,n 下一个
  • q → 退出

别用 cat 看大文件——几万行一下刷过去,滚都滚不回来。日志文件一律用 less。

4. grep —— 在文件里找内容

grep "错误" 日志.txt                 # 找包含"错误"的行
grep -i "error" 日志.txt             # 忽略大小写
grep -n "error" 日志.txt             # 显示行号
grep -r "关键词" /etc/               # 递归搜索整个目录

这是排查问题的第一把刀。 出问题时第一反应就是 grep 关键词 日志文件。

5. cp —— 复制

cp 源文件 目标文件
cp -r 源目录 目标目录     # 复制目录必须加 -r
cp -i 文件1 文件2        # 覆盖前问一下(推荐)

6. mv —— 移动 / 重命名

mv 文件 新位置/          # 移动
mv 旧名 新名             # 重命名(Linux 里移动和重命名是同一个命令)

7. rm —— 删除(小心)

rm 文件.txt              # 删文件
rm -r 目录/              # 删目录(要 -r)
rm -i 文件.txt           # 删前问一下(**建议养成加 -i 的习惯**)

⚠️ rm 没有回收站,删了就没了。 绝对不要敲 rm -rf / 或 rm -rf ~ —— 前者删系统,后者删你所有文件。 -f 是"强制,不问了",-r 是"递归",两个合起来最危险。新手别用 -f。

8. sudo —— 以管理员身份执行

sudo apt install htop      # 装软件要管理员权限
sudo systemctl restart cups  # 重启服务

什么时候需要 sudo:改系统文件、装软件、重启服务。 什么时候不需要:在你自己的 /home/用户名 里干活。

输密码时不显示任何字符——正常现象,盲打完回车。

9. ps / top —— 看进程(类似任务管理器)

ps aux | grep 关键词        # 找某个程序在不在跑
top                        # 实时的,像任务管理器(按 q 退出)

top 里按 M 按内存排序,按 P 按 CPU 排序。电脑卡的时候用它找凶手。

10. df / du —— 看磁盘空间

df -h              # 各分区用了多少(类似"我的电脑"看 C 盘剩余)
du -sh 目录/       # 某个目录占多大
du -sh * | sort -h # 当前目录下谁最占地方(从大到小)

df -h 是必会的。磁盘满了会导致各种莫名其妙的故障,第一反应就该看它。


四、三个"元操作",比命令本身更重要

1. Tab 补全

敲一半按 Tab,自动补全。按两下 Tab 会列出所有可能。

cd /etc/apa<Tab>    →  自动变成 cd /etc/apache2/

2. ↑ 历史命令

按 上箭头 翻之前敲过的命令。找到后可以直接回车,或者左右键改几个字符再执行。

Ctrl + R 更好用:按了之后输入关键词,它会搜索历史命令。

3. man / --help

忘了某个命令怎么用:

man ls           # 看完整手册(按 q 退出)
ls --help        # 看简要说明(更快)

man 的文档是英文的,但结构固定:NAME(是什么)、SYNOPSIS(怎么用)、OPTIONS(参数)。 看不懂英文:只看 OPTIONS 那几行也够用;再不行就把命令贴进搜索引擎或 AI,问"这条命令怎么用"。


五、命令行里几个"保命"小知识

操作作用
Ctrl + C强制中断当前命令(命令卡住时的救命键)
Ctrl + D退出终端 / 结束输入
Ctrl + L清屏(等于 clear)
Ctrl + A光标跳到行首
Ctrl + E光标跳到行尾
Tab自动补全
↑ / ↓翻历史命令

Ctrl + C 最重要 —— 命令跑飞了、卡住了、刷屏停不下来,一律按它。


六、路径的三种写法

/home/zhangsan/文档/报告.txt    # 绝对路径:从 / 开始,在哪敲都一样
文档/报告.txt                    # 相对路径:相对于"我现在在哪"
~/文档/报告.txt                  # ~ 开头:= /home/zhangsan/文档/报告.txt
./脚本.sh                        # ./ 开头:当前目录下的文件

~ 和 ./ 是两个必须认识的符号:

  • ~ = 你的主目录
  • ./ = “当前目录下的”,运行当前目录的程序必须加 ./(因为出于安全,系统不会从当前目录找程序)

七、验证:你过关了吗

打开终端,依次敲这些,全部成功就算过:

pwd                          # 看到 /home/你的用户名
ls -lh                       # 看到文件列表,大小带单位
cd /var/log                  # 进日志目录
ls -lh | head -5             # 只看前 5 行
cd -                         # 回到刚才的目录
mkdir 练习 && cd 练习         # 建目录并进去
echo "hello linux" > test.txt # 写个文件
cat test.txt                 # 看到 hello linux
cp test.txt test2.txt        # 复制
mv test2.txt test3.txt       # 重命名
grep hello test.txt          # 搜到 hello
cd .. && rm -ri 练习          # 删目录(-i 会问你,按 y)
df -h                        # 看磁盘
  • 上面全部跑通
  • 会用 Tab 补全
  • 会用 ↑ 翻历史
  • 知道 Ctrl + C 是干嘛的

八、不行怎么办

Q1:cd 报 No such file or directory 路径敲错了。用 Tab 补全,别手打。 另外 Linux 区分大小写,Documents ≠ documents。

Q2:Permission denied 两种可能:

  • 要管理员权限 → 前面加 sudo
  • 文件本身没执行权限 → chmod +x 文件名

Q3:中文目录名,cd 文档 敲不出来 用 Tab 补全,或者用引号 cd "文档"。最好的办法是别用中文目录名,但系统预置的"桌面/文档/下载"改不了,习惯 Tab 就行。

Q4:终端里中文显示成方块

sudo apt install fonts-wqy-zenhei fonts-wqy-microhei

然后重启终端。

Q5:sudo 提示 xxx is not in the sudoers file 你的账号没有管理员权限。找 IT 加,或者用有权限的账号。


九、今天不用管的事

  • ❌ 不用学 awk sed(很强大,但 D7 之后再说)
  • ❌ 不用学 shell 脚本编程
  • ❌ 不用学正则表达式
  • ❌ 不用管 vim(先别学,学会了出不来。要编辑文件用 nano,它底部有按键提示,Ctrl + O 保存,Ctrl + X 退出)

← 上一篇 D5|打印机、扫描仪、共享文件夹 下一篇 → D7|出问题了怎么办:日志、恢复、求助前该收集什么