当前位置:首页>Linux>用了多年Linux,才发现最实用的命令不是grep和find

用了多年Linux,才发现最实用的命令不是grep和find

  • 2026-10-11 06:35:25
用了多年Linux,才发现最实用的命令不是grep和find

用了多年 Linux,才发现真正每天都在用的,不是 grep 和 find,而是那些一开始根本没注意过的命令。它们看起来毫不起眼,直到某天遇到真实问题,你才发现已经离不开它们了。

以下是五个用越久越离不开的 Linux 命令。

一、tee:一个命令解决两个问题

大多数命令只做一件事。

tee 能做两件。

它会在屏幕上显示输出的同时,把结果保存到文件里。

比如:

nmap -sV target.com | tee scan_results.txt

没有 tee 的时候,你经常面临一个选择:要么在屏幕上看输出,要么把它存到文件里。鱼和熊掌不可兼得。

有了 tee,两个都有了。

这在以下场景尤其有用:

  • • 安全扫描时需要实时监控进度
  • • 长时间构建时既想看输出又想留日志
  • • 调试时需要回看所有滚屏信息

我数不清有多少次忘了重定向输出,事后追悔莫及,恨不得有一份当时发生了什么的记录。

tee 优雅地解决了这个问题。

听起来很简单。

但一旦养成习惯,就再也戒不掉了。

二、watch:把任何命令变成实时仪表盘

我第一次发现 watch 的时候,简直觉得像在作弊。

这个命令会按照指定的时间间隔,持续运行另一个命令。

比如:

watch -n 2 ss -tuln

现在你能看到网络活动每两秒更新一次。

想监控磁盘使用情况?

watch df -h

想追踪一个不断增长的日志文件?

watch "ls -lh application.log"

想观察部署状态?

watch kubectl get pods

watch 的美妙之处在于,它把静态命令变成了实时监控工具。

不需要仪表盘。

不需要第三方软件。

不需要复杂的配置。

只需要一条命令和一个终端窗口。

三、timeout:让你不留遗憾的命令

每个 Linux 用户迟早都会遇到一个死活不肯停的命令。

也许是卡住了。

也许是在等一个永远不会到来的响应。

也许是陷入了死循环。

这就是 timeout 大显身手的时候。

与其指望一个命令自己结束,不如直接给它设个到期时间。

timeout 30 ping google.com

命令会在 30 秒后自动停止。

你几乎可以把它用在任何地方:

timeout 60 curl https://example.com
timeout 5m python script.py
timeout 10 nmap target.com

这个命令在自动化场景中价值非凡。

脚本变得更安全。

信息收集变得更干净。

意外的卡死也变得不那么痛苦。

它就是那种你平时很少想到、直到急需时才感激存在的工具。

然后你会纳闷,为什么没有早点用上它。

四、column:让丑陋的输出瞬间变得可读

数据只有在人能看懂的时候才有用。

很多命令行工具的输出,技术上没问题,但看起来让人头疼。

这就是 column 的用武之地。

假设你有这样一个文件:

alice,admin,active
bob,user,inactive
charlie,admin,active

运行:

cat users.txt | column -t -s ","

它瞬间就变成了:

alice   admin   active
bob     user    inactive
charlie admin   active

简单。

清晰。

专业。

我经常在以下场景使用 column:

  • • 快速浏览 CSV 文件
  • • 整理对齐混乱的命令输出
  • • 在导入数据前先让导出内容变得可读

人们经常花时间写自定义格式化代码,而实际上一条命令就能让输出立即可读。

数据本身很重要。

但可读的数据更重要。

五、pv:让看不见的工作变得可见

Linux 中最让人崩溃的事情之一,就是不确定性。

你启动了一个大操作。

然后什么都没发生。

没有输出。

没有进度条。

没有预估时间。

只有一个闪烁的光标。

它在运行吗?

卡死了?

是十秒后结束,还是十个小时后?

这时候就需要 pv 出场了。

管道查看器(Pipe Viewer)。

示例:

cat huge_backup.tar | pv | gzip > backup.tar.gz

现在你能实实在在地看到进度了。

你会得到:

  • • 一个进度条,显示有多少数据已经流过管道
  • • 预估的剩余时间
  • • 吞吐速率(数据流动有多快)

这听起来可能是小事。

但绝不是。

看得见,焦虑就少。

在处理大文件、备份、迁移或数据流水线时,知道进度在推进,这本身就价值巨大。

有时候最好的工具,不是那个帮你提速的。

而是那个帮你搞清楚到底发生了什么的。

这些命令的共同点

这几个命令都没有什么花哨的,不会承诺革命性的效率提升,也不会取代你的编程语言。它们做的事情很简单——消除摩擦。这里消除一点,那里消除一点,日积月累,就会产生复利效应。

那些能留在你的工作流里多年的命令,往往不是最复杂的,而是那些默默解决你每天都会遇到的问题的。

  • • tee 保留输出
  • • watch 增加可见性
  • • timeout 增加安全感
  • • column 提升可读性
  • • pv 揭示进度

合在一起,它们让命令行的体验强大了许多。你用得越深,就越会意识到:最好的 Linux 工具其实从来都没有藏着掖着,它们只是在等你真正需要它们的那一刻。


本文翻译转载自 The Linux Commands That Get More Useful the Longer You Use Linux,作者 Fateyaly。

                 

最新文章

随机文章