watch命令可以反復(fù)的執(zhí)行一個命令,默認時間間隔為2秒鐘。
watch ifconfig 可以每隔兩秒監(jiān)視網(wǎng)絡(luò)狀態(tài)、
watch -d ifconfig 可以每隔兩秒監(jiān)視網(wǎng)絡(luò)狀態(tài), 并標記發(fā)生變化的部分
watch -d ifconfig eth0 可以每隔兩秒只監(jiān)視 網(wǎng)卡eth0, 并標記發(fā)生變化的部分
watch -d 'ifconfig eth0 | grep bytes' 可以每隔一秒只監(jiān)視網(wǎng)卡eth0,只顯示流量部分,并標記發(fā)生變化的部分
watch也可以用來查看文件變化的情況,例如:
例如 watch ls -la file,這條命令的意思是沒兩秒察看 file1的文件大小變化情況。
退出: ctrl+c
watch命令實例詳解
watch是一個非常實用的命令,基本所有的Linux發(fā)行版都帶有這個小工具,如同名字一樣,watch可以幫你監(jiān)測一個命令的運行結(jié)果,省得你一遍遍的手動運行。在Linux下,watch是周期性的執(zhí)行下個程序,并全屏顯示執(zhí)行結(jié)果。你可以拿他來監(jiān)測你想要的一切命令的結(jié)果變化,比如 tail 一個 log 文件,ls 監(jiān)測某個文件的大小變化,看你的想象力了!
1.命令格式
watch[參數(shù)][命令]
2.命令功能
可以將命令的輸出結(jié)果輸出到標準輸出設(shè)備,多用于周期性執(zhí)行命令/定時執(zhí)行命令
3.命令參數(shù)
-n或--interval watch缺省每2秒運行一下程序,可以用-n或-interval來指定間隔的時間。
-d或—differences 用-d或—differences 選項watch 會高亮顯示變化的區(qū)域。 而-d=cumulative選項會把變動過的地方(不管最近的那次有沒有變動)都高亮顯示出來。
-t 或-no-title 會關(guān)閉watch命令在頂部的時間間隔,命令,當(dāng)前時間的輸出。
-h, —help 查看幫助文檔
4.使用實例
實例1:
命令:每隔一秒高亮顯示網(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
說明:其它操作:
切換終端: Ctrl+x
退出watch:Ctrl+g
實例2:每隔一秒高亮顯示http鏈接數(shù)的變化情況
命令:
watch -n 1 -d 'pstree|grep http'
說明:
每隔一秒高亮顯示http鏈接數(shù)的變化情況。 后面接的命令若帶有管道符,需要加’’將命令區(qū)域歸整。
實例3:實時查看模擬攻擊客戶機建立起來的連接數(shù)
命令:
watch 'netstat -an | grep:21 | \ grep客戶機的IP>| wc -l'
實例4:監(jiān)測當(dāng)前目錄中 scf’ 的文件的變化
命令:
watch -d 'ls -l|grep scf'
實例5:10秒一次輸出系統(tǒng)的平均負載
命令:
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