如果您是一名软件开发人员,那么您迟早需要连接到 Linux 机器来执行管理任务、访问远程数据库服务器或部署应用程序等等。如果你想精通 Linux,熟练使用命令行界面(CLI)是必须的。如果你正在寻求获得 Linux 的信心,这里有9个基于文本的用户界面的交互式工具,我发现它们很有用,它们可以帮助你熟悉 Linux CLI。
如果您有自己的 Linux 机器,您可以使用这些工具,或者您可以使用 Docker 或虚拟机来安装 Linux 并使用它。更好的是,您可以重新利用一台旧笔记本电脑,例如,如果需要的话,可以将其用作在 Linux 上运行的数据库服务器、 Git 或 CI 环境。
因为不同的发行版需要不同的步骤,所以我没有包含如何安装每个工具的说明。最有可能的是,如果您的 Linux 发行版默认没有提供这些工具,那么您的包管理器将能够安装它们。一个快速的在线搜索应该会引导您找到正确的命令来安装每个工具。
htop
Htop 是一个类似于 top 的进程查看器,但它允许您垂直和水平滚动,甚至与鼠标指针交互。您可以使用 F 键来执行诸如搜索、筛选或终止进程之类的任务。
nmon
Nmon 是一个系统监视器、调谐器和基准测试工具。可以使用键盘快捷键自定义显示的信息,以添加 CPU、内存、网络、磁盘、文件系统、进程和资源的部分。
nmtui
Nmtui 是一个用于配置网络的基于文本的接口(在 NetworkManager 之上)。如果您不想修改配置文件,这个工具是一个很好的选择(假设您的操作系统使用 NetworkManager)。
提示: 如果你在使用这个工具时得到了有趣的颜色,试着定义下面的环境变量:
NEWT_COLORS='root=white,blue' nmtui
iftop
Iftop 是一个显示网络流量和带宽使用情况的工具。最有可能的情况是,您必须使用 sudo 运行它并指定一个网络接口。例如:
sudo iftop -i wlp3s0
iptraf
Iptraf 类似于 iftop (参见前一节) ,但是提供了一个更具交互性的界面。它监视 IP LAN 网络流量,并显示 TCP 信息、 UDP 计数、 ICMP 和 OSPF 信息、以太网负载信息、节点状态、 IP 校验和错误等。您需要以 root (sudo)身份运行此工具。
mc
Mc 或 GNU Midnight Command (我个人有时会把它称为强大的指挥官,只是为了好玩)是 Linux 的一个流行的可视 shell。更具体地说,它允许您导航和浏览系统中的文件。我发现在配置系统并需要在不同的配置文件之间来回切换时,它非常有用。它支持鼠标和许多键盘快捷键(运行 manmc 获取更多信息)。
mcedit
Mcedit 是 mc 的内部文本编辑器(参见上一节)。不过,你也可以在 mc 之外使用这个工具,并利用它的许多特性,特别是在一个功能齐全的窗口编辑器中的鼠标支持、键盘快捷键、代码导航、语法突显和宏记录功能。
nano
Nano 是另一个流行的小型文本编辑器,适合快速编辑文件。它具有很酷的特性,比如打开多个文件、每行滚动、撤销/重做操作、语法着色、行编号和软包装行。如果您正在寻找一个更高级和可配置的文本编辑器,那么您肯定需要检查 vim。
mprocs
Mprocs 允许您在一个基于文本的界面中运行多个进程:
mcprocs sh sh sh sh
我想要多少就有多少。当您在配置东西时,需要同时调整配置文件和运行命令时,它是一个很好的工具。
总结
我当然喜欢这些工具,它们在执行 DevOps 任务(如 Web 服务器和数据库供应和配置)时为我提供了很好的帮助。例如,当我正在配置前面文章中链接的专用 MariaDB 数据库服务器和这个32核 Raspberry Pi 集群时,它们确实帮了我大忙。我希望这些基于文本的 CLI 工具中至少有一个对您来说是新的,并且您会发现它很有用。