我最喜欢的 8 个实用 Linux 命令
我清楚地记得我第一次接触 Linux 的情景。当时我是一名技术培训师。我的经验、课程和认证都围绕着 Mac OS X 和 Windows Server。公司老板给整个培训部门发了一封电子邮件,要求有人开始研究 Linux。我是唯一站出来的培训师。几周后,我试图在教室后面的一台电脑上安装一个 Linux 发行版。那时候,如果显示器的垂直刷新率设置错误,就会出现“烟雾错误”等。我尝试了好几次才完成安装,但最终,机器启动了,我用我的名字和密码登录,bash 提示符闪现在我面前。
我不知道任何命令。
有时,Linux 新手只需要几件事就可以开始使用。我们都必须学习基本命令,例如、、、、ls
等等。但是,下一步是了解那些会对您的系统管理员生活产生实际影响的命令。我在下面收集了我最喜欢的几个命令。其中大多数都是非常基本的命令,但有效地使用它们ifconfig
可以让我保持高效。hostname
cd
chmod
重启服务
我们都知道——如果你更改了配置文件,就必须重新启动服务,以便它能够感知到更改。如今,我们通常使用它systemctl
来管理服务,但我还在service
下面添加了较旧的命令:
# systemctl restart daemon
# service daemon restart
储物空间
存储空间似乎是管理员们永远都在纠结的问题。有两个不同但相关的命令可以帮助您了解存储利用率:du
和df
。我总是在这两个命令中添加-h
选项。这样做可以以“人性化”的方式显示存储容量输出(例如 GB 或 TB)。
# du -h /var/log
# df -h
Ping 设备重启状态
通常,在更新服务器、应用安全补丁或安装软件时,必须重新启动设备才能继续配置。如果您习惯于远程管理服务器(您应该这样做!),可能很难判断服务器何时完成重新启动并准备好重新建立 SSH 连接。这是一个很好的机会来使用ping
。我们通常依靠ping
作为故障排除工具来确认或否认远程主机是否可用。这是相同的想法,但您使用它来通知您远程主机何时开始ping
再次响应请求(因此已完成重新启动)。
# ping 10.1.0.11
注意:你可以在 Windows 中通过运行连续 ping 来使用此技巧:ping -t 10.1.0.11
[ 你可能还喜欢: 你需要知道的 10 个基本 Linux 命令]
将 grep 与其他命令一起使用
当然,grep
是一个非常方便的实用程序。使用 grep 的最佳方法之一是与其他命令(例如ls
或 )结合使用ps
。通过将这些命令的输出通过管道传输到grep
,您可以轻松显示所需的信息。使用-i
选项在匹配字符串时忽略大小写。
# ls -l | grep rwx
# ls -l | grep -i .conf
# ps ef | grep sshd
显示您周围的网络
显示您周围网络上可用的设备有助于排除故障或了解服务器角色。该nmap
实用程序功能强大,具有许多选项。但是,即使是基本的nmap
扫描也很有用,而且不难记住。以下是几个示例。
扫描您的计算机以了解网络服务和端口:
# nmap localhost
进行基本的 ping 扫描来识别周围的主机:
# nmap -sp 10.1.1.0/24
识别特定主机的基本扫描:
# nmap -sp 10.1.1.99
附加信息
以下重定向运算符非常有用。虽然您可以使用单个>
字符将命令的输出重定向到文件,但该>>
运算符会将输出附加到文件中可能已存在的任何数据。重定向运算符 ( >
)会覆盖任何现有内容。
# du -h /var/log >> host-info.txt
# ps ef | grep sshd >> host-info.txt
# nmap -sp localhost >> host-info.txt
请注意,我已经使用我们已经在上面三个命令示例中看到的命令开始进行一些基本的系统文档编制。
注意:多年来,我一直建议学生们根本不要使用>
基本重定向器。>>
附加重定向器更安全,即使目标文件为空也能正常工作。
其他结果补充:
# date >> host-info.txt
# hostname >> host-info.txt
# ip addr >> host-info.txt
# uname -a >> host-info.txt
使用 cat 和 tail 查看信息
该cat
命令显示文件的内容。无论是配置文件、日志还是用户文档,系统管理员都会花费大量时间查看文件内容。该cat
命令非常适合此用途。
# cat host-info.txt
不要忘记使用| less
将长输出分成可管理的页面:
# cat /etc/rsyslog.conf | less
另一个显示信息的出色命令是tail
。它显示文件的最后几行。我们大多数人tail
在查看日志文件时使用它,因为最新的日志条目将位于文件底部。
# tail /var/log/secure
不要忘记相关head
命令,它显示文件的顶部。
[ 获取此免费电子书:《Kubernetes 集群入门指南》。 ]
Vim 技巧
在下一节中,我坦白承认我将作弊。到目前为止,我已在每个部分中展示了一个或两个相关命令。本节介绍 Vim(可以说是我最喜欢的命令之一)。但更具体地说,我将展示 Vim 中的几个技巧,它们使我的生活更轻松。
使用 Esc 键
Vim 可能会让 Linux 新用户感到困惑。在向学生介绍 Vim 时,我传授的一个成功秘诀是:如果您对所处的 Vim 模式(命令、执行、插入)感到困惑,请多次按下 Esc 键。这样您就可以回到命令模式的“主基地”。从那里,您可以使用:进入执行模式或使用i进入插入模式。
显示行号
您可以使用以下执行模式命令使 Vim 显示行号:
:set number
行号现在显示在文件左侧。您可以通过编辑文件使此设置永久生效~/.vimrc
。
您还可以设置许多其他配置,包括语法检查和突出显示当前行。请访问 Vim 文档以获取想法。
跳转到文件的底部、顶部或特定行
许多配置文件很长,您可能需要使用 Vim 在文件底部输入内容。命令模式下的大写G键可让您跳转到文件末尾。输入gg可让您跳转到文件顶部。这两个导航技巧可以为您节省大量时间。
您还可以跳转到文件中的特定行号。在命令模式下输入42G即可跳转到第 42 行。这是上面讨论的:set number值发挥作用的一个很好的例子。
关键字搜索
您可以在 Vim 中使用正斜杠 ( / ) 然后输入所需字符串来进行关键字搜索。在命令模式下执行此操作。
/hosts
上述示例 在文件中搜索字符串hosts 。使用n和N可跳转到该字符串的实例。
注意:这里有一篇来自 Ricardo Gerardi 的关于如何使用 Ansible 配置 Vim 的精彩文章。
包起来
这当然不是一份详尽的 Linux 命令列表。但是,这份列表确实代表了我多年来发现的有用的技巧和窍门。许多系统管理员都贡献了想法、有用的命令以及使用 Linux 功能的创造性方法,以启用系统管理员,因此请务必查找更多可提高效率的文章。