

上篇我们说了命令名字的来历。这一篇继续讲几个最容易被说错、也最容易在面试或实战里踩坑的命令。
su:别简单说成 switch usersu 经常被解释为 substitute user,很多资料也会说是 switch user。但要注意:这两个说法都有人用,存在歧义,不能把“switch user”当成唯一正确答案。
su - root作用:切换到 root 用户环境。
危险提醒:su 之后你拿到的是更高权限,操作失误的影响会更大。如果你不清楚自己在做什么,不要轻易切换到高权限账号。
sudosudo 不是“随便敲几个字母”,而是 superuser do 的常见解释。
sudo apt update作用:以管理员权限执行命令。
危险提醒:sudo 很方便,但也更危险。执行前先确认命令是不是你真的想跑的。
ifconfig:能用,但别只认它ifconfig 通常解释为 interface configuration。
ifconfig作用:查看或配置网络接口。
但要注意:
ifconfig 多来自旧工具包 net-toolsip 命令例如:
ip addr作用:查看网卡地址信息。
ip link作用:查看网卡状态。
如果你在新系统里找不到 ifconfig,不一定是系统坏了,可能只是工具换代了。
netstat:能看,但现代更推荐 ssnetstat 也属于老牌网络工具。它可以查看连接、端口、路由等信息,但在一些新系统里,常常会被 ss 替代。
netstat -tunlp作用:查看监听端口和相关进程。
更现代的替代方案:
ss -tunlp作用:查看网络连接和监听端口,通常更快。
halt、shutdown、reboot:它们不是“全称命令”这几个就是命令本身,不要硬说成某种“缩写全称”。
halthalt作用:停止系统运行。
shutdownshutdown -h now作用:立即关机。
危险提醒:这是系统级操作,执行前务必确认当前环境。尤其是在远程服务器上,别把自己锁在门外。
rebootreboot作用:重启系统。
同样是高风险操作,生产环境里要特别谨慎。
bash、awk、sed、free、echo、git:别乱背“唯一全称”这些名字里,有些确实有来源,但很多都不能简单粗暴地当成“官方唯一缩写”。
bashbash 通常指 Bourne Again SHell。
bash作用:启动一个新的 shell 会话。
这是比较经典、也比较公认的解释。
awkawk 来自三位作者姓氏首字母:Aho、Weinberger、Kernighan。
awk '{print $1}' file.txt作用:打印每行的第一个字段。
它不是普通英文单词缩写,而是人名来源,这点很重要。
sedsed 通常理解为 stream editor。
sed 's/old/new/g' file.txt作用:替换文本内容。
freefree 不是缩写,直接表示“内存空闲情况”。
free -h作用:查看内存和交换分区使用情况。
echoecho 也不是缩写,直接表示“输出文本”。
echo"hello"作用:把字符串打印到终端。
gitgit 不是严格缩写。它的名字来源有多种说法,通常认为是 Linus Torvalds 随手起的、带点自嘲意味的名字,不建议把它硬说成某个固定全称。
git status作用:查看当前仓库状态。
对初学者来说,真正有用的不是背一堆“英文全称”,而是掌握这三件事:
比如:
ifconfig 还能用,但新系统更推荐 ipnetstat 还能看,但很多场景 ss 更快su、sudo 都涉及权限,必须谨慎rm、shutdown 这类命令,误操作代价很高如果你刚开始学 Linux,不妨用这个顺序:
这样不会被“缩写”牵着走,也更接近真实工作场景。
比如你遇到:
grep "error" /var/log/syslog你首先要知道的是:
error而不是先纠结它是不是“严格全称”。
Linux 命令名

END

里有历史,也有习惯,还有一点点“约定俗成”。
你可以记住几个原则:
su、top、git 这类名字别强行下唯一结论grep 是常见解释,不必绝对化ifconfig、netstat 不是不能用,但要知道现代替代方案学 Linux,越早摆脱“只背全称”的思维,越容易真正上手。
你第一次学 Linux 时,最容易被哪个命令名绕晕?是 su、grep、top,还是 awk、sed、git?


END



