watch是一個(gè)非常實(shí)用的命令,基本所有的Linux發(fā)行版都帶有這個(gè)小工具,如同名字一樣,watch可以幫你監(jiān)測(cè)一個(gè)命令的運(yùn)行結(jié)果,省得你一遍遍的手動(dòng)運(yùn)行。在Linux下,watch是周期性的執(zhí)行下個(gè)程序,并全屏顯示執(zhí)行結(jié)果。你可以拿他來(lái)監(jiān)測(cè)你想要的一切命令的結(jié)果變化,比如 tail 一個(gè) log 文件,ls 監(jiān)測(cè)某個(gè)文件的大小變化,看你的想象力了!
watch[參數(shù)][命令]
可以將命令的輸出結(jié)果輸出到標(biāo)準(zhǔn)輸出設(shè)備,多用于周期性執(zhí)行命令/定時(shí)執(zhí)行命令
-n或--interval watch缺省每2秒運(yùn)行一下程序,可以用-n或-interval來(lái)指定間隔的時(shí)間。-d或—differences 用-d或—differences 選項(xiàng)watch 會(huì)高亮顯示變化的區(qū)域。 而-d=cumulative選項(xiàng)會(huì)把變動(dòng)過(guò)的地方(不管最近的那次有沒(méi)有變動(dòng))都高亮顯示出來(lái)。-t 或-no-title 會(huì)關(guān)閉watch命令在頂部的時(shí)間間隔,命令,當(dāng)前時(shí)間的輸出。-h, —help 查看幫助文檔命令:每隔一秒高亮顯示網(wǎng)絡(luò)鏈接數(shù)的變化情況
watch -n 1 -d netstat -ant
輸出結(jié)果:
Every 1.0s: netstat -ant Mon Feb 27 20:49:38 2017
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.210:22 192.168.0.5:51577 ESTABLISHED
tcp6 0 0 :::80 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
說(shuō)明:其它操作:
切換終端: Ctrl+x
退出watch:Ctrl+g
命令:
watch -n 1 -d 'pstree|grep http'
說(shuō)明:
每隔一秒高亮顯示http鏈接數(shù)的變化情況。 后面接的命令若帶有管道符,需要加’’將命令區(qū)域歸整。
命令:
watch 'netstat -an | grep:21 | \ grep<客戶(hù)機(jī)的IP>| wc -l'
命令:
watch -d 'ls -l|grep scf'
命令:
watch -n 10 'cat /proc/loadavg'
輸出結(jié)果如下:
Every 10.0s: cat /proc/loadavg Mon Feb 27 20:54:45 2017
0.01 0.04 0.05 1/132 6335