簡體   English   中英

讓incron inotify工作的麻煩

[英]trouble getting incron inotify to work

亞歷克斯回答這里是我的步驟:

創建shell代碼

root@ip[/]# touch mylog.sh
root@ip[/]# nano mylog.sh

復制mylog.sh中的代碼

#!/bin/bash
echo "File $1 created." >> /mylog.log

允許

root@ip[/]# chmod +x mylog.sh

創建日志文件

root@ip[/]# touch mylog.log 

打開icron表

incrontab -e

把新命令放入

/test/ IN_CREATE mylog.sh $@$#

重新加載incron - 創建一個新文件 - 檢查日志文件

root@ip[/]# incrontab --reload
requesting table reload for user 'root'...
request done

root@ip[/]# cd test
root@ip[/test]# touch newfile.txt

root@ip[/test]# cd /
root@ip[/]# nano mylog.log

但仍然是空的日志文件...我錯過了什么?


最后用完整路徑調用shell腳本就可以了:

/test/ IN_CREATE /mylog.sh $@$#

您通常可以在/ var / log / messages中找到incron日志

如果要將事件記錄到特定文件,可以使用:

/test/ IN_CREATE mylog.sh $@$#

其中mylog.sh是一個處理日志記錄的shell腳本。

#!/bin/bash
echo "File $1 created." >> /home/myuser/filescreated.log

不要忘記通過chmod + x mylog.sh為此shell腳本授予執行權限

說明:一旦開始使用您正在調用的命令的參數,就必須將其全部放入shell腳本中。 因為incron不會將參數傳遞給您的命令,而是將其解釋為自身的參數。

不要忘記在更改incrontab后調用incrontab --reload。

另一個例子

incrontab -e

/text/ IN_CREATE /home/myuser/mylog.sh $@ $#

mylog.sh

#!/bin/bash
echo "$(date) File $2 in $1 created." >> /home/myuser/log.txt

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM