Linux命令行監控程序,還能實時高亮顯示差異,我就選它了

引言

watch用於定期運行任意命令,並在終端窗口上顯示該命令的輸出。當你必須重複執行命令並觀察命令輸出隨時間變化時,它非常有用。

例如,可以使用watch命令來監視系統正常運行時間或磁盤使用情況。

watch程序是procps(或procps-ng)軟件包的一部分,幾乎所有Linux發行版都預裝了該軟件包。

Linux命令行監控程序,還能實時高亮顯示差異,我就選它了

用法

watch命令的語法如下所示:

<code>watch [選項] 命令/<code>

為了最好地說明watch命令是如何工作的,讓我們運行date命令:

<code>watch date/<code>

輸出內容如下圖:

Linux命令行監控程序,還能實時高亮顯示差異,我就選它了

正如上圖所示,watch命令將臨時清除所有終端內容,並開始定期運行提供的命令。

在不帶任何選項的情況下使用時,watch將每兩秒運行一次指定的命令。

在屏幕標題的左上角,您可以看到監視更新間隔和執行的命令(每2.0s:date),而在右上角的監視顯示當前時間和日期。

如果您想關閉標題,請使用-t(--no-title)選項。

指定命令的輸出顯示在屏幕上,並每兩秒定期更新一次。要退出watch命令,只需按Ctrl+C組合鍵。

你還可以使用-g(--chgexit)選項將watch設置為在命令的輸出更改時退出。

下面我們介紹最常用的watch命令選項。


修改監控時間間隔

如果兩秒的默認更新間隔不合適怎麼辦?-n(--interval)選項後跟所需的秒數,允許你更改更新之間的時間間隔:

<code>watch -n 間隔秒數 命令/<code>

例如每5秒刷新一次,監控磁盤使用情況:

<code>watch -n 5 df -h/<code>

輸出內容如下圖:

Linux命令行監控程序,還能實時高亮顯示差異,我就選它了


高亮顯示差異內容

-d(--Difference)選項將使Watch突出顯示連續更新之間的更改。

<code>watch -d 命令/<code>

假設你想要通過運行uptime命令監視系統正常運行時間,並突出顯示更改。輸入以下命令:

<code>watch -d uptime/<code>

可見輸出差異部分都被高亮顯示了。

Linux命令行監控程序,還能實時高亮顯示差異,我就選它了


watch 命令中使用管道符

如果要執行包含管道的命令,則需要用單引號或雙引號將該命令引起來。

如果沒有包含完整的命令,watch將只運行第一個命令,然後通過管道將其輸出傳遞給管道中的下一個命令。

正確用法:

<code>watch 'COMMAND_1 | COMMAND_2'/<code>

例如,以下命令將使用netstat和grep實用程序的組合監視端口80上的活動連接數:

<code>watch "netstat -anp | grep -c ':80\\b.*LISTEN'"/<code>


寫在最後

到這兒,你應該已經很好地理解了如何使用Linux watch命令。

選項並不多,功能也很單一,相信在你的管道操作中,會有它的一席之地。

Happy coding :-)


我是 @程序員小助手 ,持續分享編程故事,歡迎關注。


分享到:


相關文章: