转:http://bbs.ickey.cn/group-topic-id-41357.html
为什么要监控文件夹变化呢?
比如我们在往文件夹添加一个音乐文件以后,希望它能自动添加到播放列表。
可以通过incron来实现。
一、安装
sudo apt-get update
sudo apt-get install incron
二、使用
把root用户添加到incron用户白名单
sudo nano /etc/incron.allow
添加root后按Ctrl+X,再按Y保存退出
现在可以执行
sudo incrontab -e
来添加任务了,比如
/var/lib/mpd/music/ IN_WRITE_CLOSE,IN_DELETE /home/pi/updateplaylist.sh
第一部分是文件夹,第二部分是文件夹执行的操作,第三部分是检测到第二部分的动作之后执行的命令。
<路径> <监控动作> <待执行命令>
路径可以是文件夹也可以是一个文件
监控动作有以下几种
IN_ACCESS 当文件被读取时
IN_ATTRIB 当文件属性被修改时
IN_CLOSE_WRITE 当以写入方式打开的文件被关闭时。
IN_CLOSE_NOWRITE 当不是以写入方式打开的文件被关闭时
IN_CREATE 当文件或者文件夹被创建时
IN_DELETE 当文件或者文件夹被删除时
IN_DELETE_SELF 当被监控的文件或文件夹本身被删除时
IN_MODIFY 当文件被修改时
IN_MOVE_SELF 当被监测的文件夹本身被移动时
IN_MOVED_FROM 当文件移出被监控文件夹时
IN_MOVED_TO 当文件被移入被监控文件夹时
IN_OPEN 当文件被打开时
以上监控动作可以组合使用,用,分隔即可
IN_MOVED_FROM和IN_MOVED_TO可以被合并为IN_MOVE
更多用法可以看这儿:
http://www.howtoforge.com/triggering-commands-on-file-or-directory-changes-with-incron