在本文中,我將告訴您有關 shell 目錄偵聽器稱為 守望者. Daemon watcherd 將檢查目錄更改並執行指定的命令或 shell 腳本。
安裝觀察者
在 Ubuntu 16.04 上
下載
$ wget https://github.com/devilbox/watcherd/archive/master.zip
解壓存檔
$ unzip master.zip
如果你沒有安裝解壓縮執行
$ sudo apt-get install unzip
並複製到 /usr/bin/
$ sudo cp watcherd-master/watcherd /usr/bin/
用法
現在我們可以執行 --help
旗幟
$ watcherd --help
讓我們創建一個名為 test 的目錄並使 watcherd 工作
$ mkdir test
現在用簡單的參數啟動 watcherd
$ watcherd -v -p ~/test -a "echo added %n" -d "echo deleted %n" -t "ls -l ~/test"
關於 watcherd 參數的一點提示
-v
詳細輸出-p ~/test
目錄路徑-a "echo added %n"
執行"echo added"
如果在路徑中創建了任何目錄-d "echo deleted %n"
執行"echo deleted"
如果路徑中的任何目錄被刪除%n
將替換為目錄名稱,或者您可以使用%p
獲取已創建或已刪除目錄的完整路徑-t "ls -l ~/test"
觸發後執行命令&
在後台運行
並檢查它是否正在運行
$ ps ax | grep watcherd
現在我們可以嘗試創建一個名為的新目錄 aaa
在我們的測試文件夾中
$ mkdir test/aaa
正如我們在創建目錄後所見 aaa
被執行的觀察者 'echo added aaa'
,我們收到了 watcherd 詳細消息,添加了一個新目錄及其完整路徑, ls -l
觸發輸出。
現在讓我們刪除這個目錄並檢查輸出
$ rm -r test/aaa
我們得到了相同的輸出 echo deleted aaa
. 但不是做 echo
您可以在那裡執行任何 shell 命令或運行任何腳本。
這個守護進程對於 nginx 或 apache 等 web 服務器非常有用,用於監視帶有網站的新文件夾、創建新配置文件和重新啟動 web 服務器。