檔案監控可以配合rsync實現檔案自動同步,例如監聽某個目錄,當檔案變化時,使用rsync命令將變化的檔案同步。(可用於**自動發布)
inotify 是linux核心的乙個特性,在核心 2.6.13 以上都可以使用。
如果在shell環境下,可以安裝 yum install inotify-tools,安裝以後有兩個命令可以用inotifywait 和 inotifywatch,inotifywait 是需要使用的命令。
監聽/usr/local/src 目錄:
/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %h:%m'引數:--format說明:--format '%t %w %f %e' -e modify,delete,create,attrib
/usr/local/src
執行上面的命令之後,在監聽的目錄下建立乙個1.txt檔案,得到如下結果:
22/03/18 17:22 /usr/local/src/ 1.txt create這個指令碼的功能是迴圈監聽檔案或目錄的增刪改事件,當事件發生執行設定的指令碼檔案。22/03/18 17:22 /usr/local/src/ 1.txt attrib
#!/bin/shshell指令碼後台執行nohup使用nohup,其中test.sh為所執行的指令碼,out.txt為輸出資訊的地方。# 監視的檔案或目錄
filename=$1
# 監視發現有增、刪、改時執行的指令碼
script=$2
inotifywait -mrq --format '%e' --event create,delete,modify $filename | while read event
do case $event in modify|create|delete) bash $script ;;
esac
done
nohup sh test.sh>out.txt &
如何使用 類進行檔案的 I O 處理
大多數 c 程式設計師都熟悉不止乙個檔案 i o 庫。首先是傳統的 unix 風格的庫,它由一些低階函式如 read 和 open 組成。其次是 ansi c 的 庫,它包含 fopen 和 fread 等函式。其它的還有一些具備所有權的庫或框架,比如 mfc,它有很多自己的檔案處理類。這些庫一般都...
Shell 入門教程(十六) 如何進行檔案判斷
檔案測試運算子用於檢測檔案的各種狀態和屬性,目前支援的運算子如下 要特別注意的是 s file判斷檔案是否為空時,不為空才返回true。變數 file 表示檔案 user chenshuyi hello.sh,它的大小為 52 位元組,具有 rwx 許可權。下面的 將檢測該檔案的各種屬性 bin b...
使用QFile進行檔案操作
qfile類我我們提供了操作檔案的常用功能。它是一種io裝置,可以用來讀寫文字檔案和二進位制檔案,也可以用來讀寫qt的資源檔案。qfile類可以單獨使用,該類本身提供了read write函式,但更方便的方式是,將qfile和qtextstream或qdatastream一起使用。一般情況下,使用q...