参考:Linux watch Command Tutorial for Beginners (5 Examples)
前言
有的时候我们想重复执行某一命令,通过该命令的输出进而获知系统某些信息。watch命令本质上是允许你重复执行某一个命令(默认2s执行一次),除非你中断他。这让我想起了free命令,free命令用于查看物理内存,swap,buffer等使用情况,他有个-s参数,可以设置多久执行一次free命令。工作机制的确很像,但是free会把每次输出结果顺序显示出来,就像这样
[root@localhost Test_ar]# free -s 1 total used free shared buffers cached Mem: 2037260 721572 1315688 164 25808 527932 -/+ buffers/cache: 167832 1869428 Swap: 2097148 0 2097148 total used free shared buffers cached Mem: 2037260 721588 1315672 164 25808 527932 -/+ buffers/cache: 167848 1869412 Swap: 2097148 0 2097148 total used free shared buffers cached Mem: 2037260 721588 1315672 164 25808 527932 -/+ buffers/cache: 167848 1869412 Swap: 2097148 0 2097148 total used free shared buffers cached Mem: 2037260 721588 1315672 164 25808 527932 -/+ buffers/cache: 167848 1869412 Swap: 2097148 0 2097148 。。。。。
你会被free的输出给刷屏。watch就文明的多,他会把最新一次的输出替换上一次的输出,给人一种动态更新的感觉。
举例
date命令可以查看当前日期,与watch搭配使用就可以每2s刷新一次时间
watch date
使用-d参数,还可以把变化的部分高亮显示
watch默认是2s,你可以用-n参数指定时间间隔
watch -n 3 date 指定3s执行一次date
默认情况下,watch会输出一个头部信息,包含多久执行一次命令,当前日期等等,使用-t取消这一头部信息。