Linux 是一個強大的操作系統,它提供了各種工具和指令,可讓使用者更有效地管理和監控系統。其中一個非常有用的指令就是 watch。watch 指令允許您重複執行一個命令,然後以定期更新的方式顯示其輸出。這對於監控系統狀態、觀察日誌文件或測試程式的執行結果非常有用。本文將教您如何使用 watch 指令,以及它的一些常見應用場景。
安裝 watch
在大多數 Linux 發行版中,watch 已經預安裝。如果您不確定,您可以在終端中運行以下命令檢查它是否可用:
watch --version
如果 watch 已經安裝,您應該會看到版本資訊。如果沒有安裝,您可以使用以下方法安裝它:
- 在 Debian/Ubuntu 系統上:
sudo apt-get install watch
- 在 CentOS/RHEL 系統上:
sudo yum install watch
現在,讓我們開始使用 watch 指令。
基本用法
要使用 watch,只需在終端中輸入 watch,然後跟隨要執行的命令。例如,如果您想要每2秒執行一次 tail /var/log/httpd/error_log 命令,可以這樣做:
watch -n 2 tail /var/log/httpd/error_log
注意:watch 更新的間隔時間不可低於 0.1 秒。
進階用法
watch 支援各種選項,可自定義其行為。以下是一些常見的選項:
-n:指定更新間隔的秒數。例如,-n 5將每5秒刷新一次。-d:高亮顯示輸出中的差異部分。這對於監控日誌文件非常有用。-t:在標題行顯示時間。這將在終端頂部顯示一個時間戳記。-c:清除屏幕上的輸出,然後顯示新的輸出。這對於使終端干净整潔非常有用。
教學範例
現在,讓我們看一些實際的應用示例,以了解 watch 指令的多功能性。
監看系統資源
您可以使用 watch 監看系統資源使用情況,例如 CPU 和內存。以下是一個監看 CPU 使用情況的示例:
watch -n 1 'top -b -n 1 | grep "Cpu(s)"'
此命令每秒更新一次 CPU 使用率。
監看日誌文件
如果您想查看日誌文件的最新內容,可以使用 watch,它將自動刷新並顯示新增的日誌行。例如:
watch -n 2 tail /var/log/httpd/error_log

這將每2秒顯示 /var/log/syslog 文件的最新內容。
測試程式執行
您可以使用 watch 來測試長時間運行的程式,確保它們正常工作。例如,如果您正在開發一個網絡應用程序,可以使用 curl 命令定期訪問該應用程序,以確保它正確運行:
watch -n 5 'curl -I http://localhost:8080'
這將每5秒檢查一次網絡應用程序的回應。
總結
watch 指令是一個功能強大且多用途的工具,可用於監控命令的執行結果。無論是監看系統資源、觀察日誌文件還是測試程式執行,它都是一個極為實用的工具。希望本教學有助於您更好地利用 watch 指令來簡化日常任務。
常見問題解答
- 如何停止
watch命令? 按下Ctrl + C即可停止運行中的watch命令。 watch是否支援自定義格式輸出? 是的,您可以使用watch的-o選項將輸出保存到文件中,然後使用其他工具來自定義格式。watch可以在後台運行嗎? 是的,您可以在命令後加上&,將watch命令放入後台運行,
延伸閱讀:chmod 是什麼 ? 5分鐘學會 Linux 檔案權限設定
延伸閱讀:在 Linux 設定 crontab 排程教學與範例
