watch#

watch 是包含在 procps-ng 內的定期執行指令工具

watch 是一個用於週期性執行指定指令,並在終端機視窗中全螢幕顯示結果的工具。它能讓你監控指令輸出的即時變化,而不需要手動重複輸入指令。這在監控磁碟空間增長、檔案下載進度、網路連線狀態或系統負載變化時非常有用。

Install#

watch 包含在 procps-ng 套件內,絕大多數 Linux 發行版皆預設安裝。

$ sudo apt install procps

Setting in up#


Operate#

watch [options] command

參數範例指令說明
-nwatch -n 1 df -h間隔時間。設定每隔幾秒執行一次(範例為每 1 秒,預設為 2 秒)。
-dwatch -d uptime高亮差異。自動標示出前後兩次更新之間有變動的內容(Differences)。
-twatch -t ls -l隱藏標題。不顯示最上方的更新間隔、指令名稱與目前時間。
-gwatch -g ls /tmp偵測變動即離開。當指令的輸出結果發生變化時,自動停止 watch。
-bwatch -b "ls file"蜂鳴提示。如果指令執行回傳非零(失敗),則發出警告音。
-xwatch -x sh -c '...'執行子行程。將指令交給 exec 而非 sh -c 執行,處理特殊引號較穩定。
區塊名稱功能詳細解釋
Header狀態標題顯示更新頻率 (Every n.ns)、執行指令內容以及當前系統時間。
Body指令輸出內容顯示最近一次執行指令後的標準輸出 (stdout) 結果。
Highlights差異標示若開啟 -d,變動的字元會以反白或不同顏色顯示。
Exit結束監控按效下 Ctrl + C 即可終止 watch 並回到終端機提示字元。

Reference#

Official docs: