linux watch命令介绍
一,watch命令是什么
watch-定期执行程序,全屏显示输出
#帮助文档
http://man.he.net/man1/watch
watch重复运行命令,显示其输出和错误(第一个屏幕完整)。这允许您观察程序输出的变化随着时间的推移。默认情况下,命令每2秒运行一次,手表将运行直到中断
二,watch帮助信息
选项
-d, --differences [permanent]
突出显示连续更新之间的差异。Option将读取更改突出显示为永久的可选参数,允许查看自第一次迭代以来至少更改过一次的内容。
-n, --interval seconds
指定更新间隔。该命令将不允许超过0.1秒的间隔,在该间隔中较小的值将被转换。两者都“。”和','适用于任何地区。
-p, --precise
使手表每隔几秒尝试运行一次命令。用ntptime试试,注意分数秒是如何保持(几乎)不变的,而不是持续增加的正常模式。
-t, --no-title
关闭显示顶部显示间隔、命令和当前时间的标题,以及以下空白行。
-b, --beep
如果命令有非零出口,则发出蜂鸣声。
-e, --errexit
出现命令错误时冻结更新,然后按键后退出。
-g, --chgexit
命令输出发生变化时退出.
-c, --color
解释ANSI颜色和样式序列.
-x, --exec
将命令传递给exec(2)而不是sh-c,这样就不需要使用额外的引号来获得所需的效果。
-h, --help
显示帮助文本并退出
-v, --version
显示版本信息并退出
XIT STATUS
0 成功.
1 各种故障.
2 将进程分叉到监视失败。
3 用写入端管道替换子进程stdout失败
4 命令执行失败.
5 关闭子进程写入管道失败.
7 IPC管道创建失败.
8 获取waitpid为(2)的子进程返回值失败,或者出现错误时命令退出.
other 监视会将命令退出状态传播为子退出状态
三,例子
先看看在线文档给出的例子
1,要查看目录更改的内容,可以使用
watch -d ls -l
2,如果您只对用户joe拥有的文件感兴趣,您可以使用
watch -d 'ls -l | grep 111'
touch 111 #新一个终端运行,可以看到watch命令的变比
3,要想看看引用的效果,试试这些
watch echo $$ #echo $$ 获取当前进程id
watch echo '$$'
watch echo "'"'$$'"'"
4,要查看精确计时的效果,请尝试将-p添加到
watch -n 10 sleep 1
5,监视管理员安装最新的内核
watch uname -r
请注意,-p不能保证在重新启动时工作,尤其是在ntpdate或其他启动时间更改机制的正面
6,每隔2秒查看系统进程占用情况:
watch -n 2 ps aux
7,每隔10秒查看磁盘空间使用情况:
watch -n 10 df -h
8,每隔3秒查看当前目录下文件数量:
watch -n 3 'ls | wc -l'
在上述例子中,-n选项指定了监控间隔时间,后面的参数是要监控的命令或脚本。watch命令默认会在终端上循环显示监控结果,直到用户手动中断或按下Ctrl+C。
四,总结
很多命令能和watch组合,需要大家自己去尝试,watch命令不算常用,同时也很重要,对于很多终端监控来说很实用。
浙公网安备 33010602011771号