在Debian系統中,inotify
是一個用于監控文件系統事件的Linux內核子系統。你可以使用inotify-tools
這個軟件包來輕松地與腳本結合使用,以便在文件或目錄發生變化時執行特定的操作。
首先,確保你已經安裝了inotify-tools
。如果沒有,請使用以下命令安裝:
sudo apt-get update
sudo apt-get install inotify-tools
接下來,創建一個簡單的腳本來處理inotifywait
命令的輸出。例如,創建一個名為inotify_script.sh
的文件,并添加以下內容:
#!/bin/bash
# 監控目錄
watch_directory="/path/to/your/directory"
# 監控事件
events="create,delete,modify"
# 當事件發生時執行的命令
command_to_run="echo 'File event detected'"
inotifywait -m -r -e "$events" --format '%w%f' --timefmt '%Y-%m-%d %H:%M:%S' "$watch_directory" | while read file
do
echo "Event occurred on: $file"
eval "$command_to_run"
done
在這個腳本中,我們指定了要監控的目錄(watch_directory
),要監控的事件(events
),以及當事件發生時要執行的命令(command_to_run
)。inotifywait
命令會持續監控指定的目錄,并在檢測到事件時輸出相關信息。然后,我們使用while read file
循環來處理這些輸出,并執行相應的命令。
確保你的腳本具有可執行權限:
chmod +x inotify_script.sh
現在,你可以運行這個腳本來監控目錄并在檢測到文件事件時執行命令:
./inotify_script.sh
你可以根據需要修改腳本中的參數和命令,以滿足你的需求。