Pi & Kiss

Linux 的世界里, 最让人欲罢不能的就是里面的脚本的强大功能。让Windows 下的 .bat 批处理脚本实在是小巫见大巫。

然而在我们日常解决系统问题里,我们会经常用到 lsof 和 curl 这两个命令。今天要介绍的是 lsof -Pi 和 curl -kIsS ,还有一个 perl -p -i -e 很多人可能都已经听说过。

lsof 就是 list open file,查看内存中打开的文件,对于我们检查进程是否正常,特别是网络的端口占用,Unix Socket 的使用,共享库的使用等都能让我们一目了然。 lsof -i 就是用来检查打开的 Internet 侦听地址的进程的。

例如 lsof -i6 就是列出又有 IPv6 上侦听的进程,如果要检查 udp 53 端口是否打开,我们可以运行 lsof -i udp:53 ,然而这个 -i 命令的输出里,端口都不是数字,而是服务名称,这些名称其实是定义在 /etc/services 文件里的。那么如何显示端口号的数字呢? 我们只要 lsof -Pi 就可以了!

讲完 Pi , 我们讲 Kiss,当然, 提到 Kiss 你也不用想入非非。码农也好,网工也罢,curl 是个常用的 http(s) API 调用工具,当然也是文件下载的利器,如果我们仅仅只是要检查 http 头怎么办? 例如,对于饱受 QOS 困扰的国际求学的需求,我们经常需要检查 google 网站是否可以正常访问,这个时候我们只需要检查 http 是否能正常返回即可。 我们就可以用 proxychains4 curl -kIsS https://www.google.com/ 来检查我们设置在 proxychains 里的代理服务器是否能正常使用,来验证我们的国际求学之路没有被阻断。

最后提一下 perl 的 pie 替换功能。如果我们要替换一个文件里的文字,直接用 sed 是不能修改被修改文件本身的,但是 perl 的 pie 提供了这个功能。 例如我们要把文件里的“女生”修改为“美女”的话,用 perl -p -i -e ‘s/女生/美女/g’ test.txt 即可。

希望这种方式传播 Linux 知识能让你记忆更加深刻,喜欢我们的网站话,也可以拿起手机扫码屏幕右边关注我们的公众号,如果是手机搜索进入我们页面的话,屏幕底下也有公众号二维码。

作者: 甬洁网络

--移动互联网&物联网技术提供商