下面,结合 ts 实用程序运行同样地命令:
$ ping -c 2 localhost | ts Aug 21 13:32:28 PING localhost(localhost (::1)) 56 data bytes Aug 21 13:32:28 64 bytes from localhost (::1): icmp_seq=1 ttl=64 time=0.063 ms Aug 21 13:32:28 64 bytes from localhost (::1): icmp_seq=2 ttl=64 time=0.113 ms Aug 21 13:32:28 Aug 21 13:32:28 --- localhost ping statistics --- Aug 21 13:32:28 2 packets transmitted, 2 received, 0% packet loss, time 4ms Aug 21 13:32:28 rtt min/avg/max/mdev = 0.063/0.088/0.113/0.025 ms
对比输出可以看出,ts 在每一行行首增加了时间戳。下面给出另一个例子:
$ ls -l | ts Aug 21 13:34:25 total 120 Aug 21 13:34:25 drwxr-xr-x 2 sk users 12288 Aug 20 20:05 Desktop Aug 21 13:34:25 drwxr-xr-x 2 sk users 4096 Aug 10 18:44 Documents Aug 21 13:34:25 drwxr-xr-x 24 sk users 12288 Aug 21 13:06 Downloads [...]
vidir 实用程序
vidir 实用程序可以让你使用 vi 编辑器(或其它 $EDITOR 环境变量指定的编辑器)编辑指定目录的内容。如果没有指定目录,vidir 会默认编辑你当前的目录。
下面的命令编辑 Desktop 目录的内容:
$ vidir Desktop/
vidir
上述命令使用 vi 编辑器打开了指定的目录,其中目录内的文件都会对应一个数字。下面你可以按照 vi 的操作方式来编辑目录中的这些文件:例如,删除行意味着删除目录中对应的文件,修改行中字符串意味着对文件进行重命名。
你也可以编辑子目录。下面的命令会编辑当前目录及所有子目录:
$ find | vidir -
请注意命令结尾的 - 。如果 - 被指定为待编辑的目录,vidir 会从标准输入读取一系列文件名,列出它们让你进行编辑。
如果你只想编辑当前目录下的文件,可以使用如下命令:
$ find -type f | vidir -
只想编辑特定类型的文件,例如 .PNG 文件?你可以使用如下命令:
$ vidir *.png
这时命令只会编辑当前目录下以 .PNG 为后缀的文件。
vipe 实用程序
vipe 命令可以让你使用默认编辑器接收 Unix 管道输入,编辑之后使用管道输出供下一个程序使用。
执行下面的命令会打开 vi 编辑器(当然是我默认使用的编辑器),你可以编辑 echo 命令的管道输入(即 “Welcome to OSTechNix”),最后将编辑过的内容输出到终端中。
$ echo "Welcome to OSTechNIx" | vipe Hello World
从上面的输出可以看出,我通过管道将 “Welcome to OSTechNix” 输入到 vi 编辑器中,将内容编辑为 “Hello World”,最后显示该内容。
好了,就介绍这么多吧。我只介绍了一小部分实用程序,而 moreutils 包含更多有用的实用程序。我在文章开始的时候已经列出目前 moreutils 软件包内包含的实用程序,你可以通过 man 帮助页面获取更多相关命令的细节信息。举个例子,如果你想了解 vidir 命令,请运行:
$ man vidir
希望这些内容对你有所帮助。我还将继续分享其它有趣且实用的指南,如果你认为这些内容对你有所帮助,请分享到社交网络或专业圈子,也欢迎你支持 OSTechNix 项目。 【编辑推荐】 - 6个简单的方式来查看Linux中的用户名和其他信息
- 如何在Linux Shell编程中定义和使用函数
- Linux运维一定要知道的六类好习惯和23个教训,避免入坑!
- 如何确定你的Linux发行版中有没有某个软件包
- 15个提高工作效率的Linux命令行别名
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0
(编辑:ASP站长网)
|