35. inotifywait命令详解
1 | https://www.cnblogs.com/martinzhang/p/4126907.html |
1-1. 查看 inotifywait 位置
1 | /usr/local/inotify/bin/inotifywait |
2-1. 帮助 – 简写
1 | -h |
2-2. 帮助 – 全写
1 | --help |
3-1. 排除要监控的内容–这个内容排除在监控之外 – 简写
1 | @ <file> |
3-1-1. 忽略对 /home/wwwroot/default/tongbu/ignore/ 目录的事件监听
1 | @ '/home/wwwroot/default/tongbu/ignore/' |
3-2. 排除要监控的内容–这个内容排除在监控之外 – 全写
1 | --exclude <pattern> |
3-2-1. 忽略对 /home/wwwroot/default/tongbu/ignore/ 目录的事件监听
1 | --exclude '/home/wwwroot/default/tongbu/ignore/' |
4-2. 与–exclude相同,区别是此选项正则表达式忽略大小写
1 | --excludei <pattern> |
5-1. 表示始终保持事件监听状态 (如果不加此选项,则监听到一次后便退出) – 简写
1 | -m |
5-2. 表示始终保持事件监听状态 (如果不加此选项,则监听到一次后便退出) – 全写
1 | --monitor |
6-1. 以守护进程方式后台运行(除了在后台运行外,与-m选项一样) – 简写
1 | -d |
6-2. 以守护进程方式后台运行(除了在后台运行外,与-m选项一样) – 全写
1 | --daemon |
7-1. 递归监听其下所有子目录及文件 – 简写
1 | -r |
7-2. 递归监听其下所有子目录及文件 – 全写
1 | --recursive |
8-2. Read files to watch from
1 | --fromfile <file> |
9-1. 将事件输出到指定文件,而不输出到屏幕 – 简写
1 | -o |
9-1-1. 将事件输出到 /var/log/inotifywait.log
1 | -o '/var/log/inotifywait.log' |
9-2. 将事件输出到指定文件,而不输出到屏幕 – 全写
1 | --outfile <file> |
10-1. 将错误发送到系统日志,而不是输出到屏幕 – 简写
1 | -s |
10-2. 将错误发送到系统日志,而不是输出到屏幕 – 全写
1 | --syslog |
11-1. 打印较少信息(仅打印事件) – 简写
1 | -q |
11-2. 打印较少信息(仅打印事件) – 全写
1 | --quiet |
12-3. 不打印任何信息(静默方式)
1 | -qq |
13-1. 设置打印屏幕的格式
1 | --format <fmt> |
13-2. 设置打印屏幕的格式 ‘时间 触发事件文件名称 触发的事件名称’
1 | --format '%T %f %e' |
14-1. 指定输出时间内容,相当于将时间赋值给%T
1 | --timefmt <fmt> |
14-2. 指定%T格式为 ‘年-月-日 小时:分钟’
1 | --timefmt '%y-%m-%d %H:%M' |
15-1. 用CSV格式打印事件 – 简写
1 | -c |
15-2. 用CSV格式打印事件 – 全写
1 | --csv |
16-1. 指定一次性监听时间,超时退出监听(值为0表示永不超时,单位:秒),不可与 -m -d 连用 – 简写
1 | -t |
16-1-1. 设定监听60秒,60秒内监听到事件立即退出,如果监听不到事件60秒后也退出
1 | -t 60 |
16-1. 指定一次性监听时间,超时退出监听(值为0表示永不超时,单位:秒),不可与 -m -d 连用 – 全写
1 | --timeout <seconds> |
17-1. 指定要监听的事件(多个事件用逗号分割) – 简写
1 | -e |
17-2. 指定要监听的事件(多个事件用逗号分割) – 全写
1 | --event <event1> |
17-3. 指定要监听 create,delete,close_write,attrib,moved_to
1 | -e 'create,delete,close_write,attrib,moved_to' |
18-1. 设置打印屏幕的格式 – 常见选项 – 时间
1 | %T |
18-2. 设置打印屏幕的格式 – 常见选项 – 触发事件文件所在绝对路径
1 | %w |
18-3. 设置打印屏幕的格式 – 常见选项 – 触发事件文件名称
1 | %f |
18-4. 设置打印屏幕的格式 – 常见选项 – 触发的事件名称
1 | %e |
18-5. 事件以“X”分隔
1 | %Xe |
19-1. 访问,读取文件
1 | access |
19-2. 修改,文件内容被修改
1 | modify |
19-3. 属性,文件元数据被修改 – 【理由:chmod更改属性】
1 | attrib |
19-4. 文件或目录被写关闭【理由:文件内容被更改】
1 | close_write |
19-5. 文件或目录以只读方式打开后关闭
1 | close_nowrite |
19-6. 关闭,对文件进行关闭操作。
1 | close |
19-7. 打开,对文件进行打开操作
1 | open |
19-8. 文件或目录被移动进来【理由:mv目录内重命名】
1 | moved_to |
19-9. 文件或目录被移动出去【理由:mv目录内重命名】
1 | moved_from |
19-10. 文件或目录不管是移出或移进【理由:mv目录内重命名】
1 | move |
19-11. 文件或目录被创建【理由:mkdir创建目录】
1 | create |
19-12. 文件或目录被删除【理由:rm删除】
1 | delete |
19-13. 文件或目录自删除
1 | delete_self |
19-14. 文件系统取消挂载
1 | unmount |
19-1. 监听 /home/wwwroot/default/tongbu/ 目录内所有文件和目录的”增删改”操作 , 监听内容 create,delete,close_write,attrib,moved_to
监听内容 create,delete,close_write,attrib,moved_to
指定%T格式为 ‘年-月-日 小时:分钟’
设置打印屏幕的格式 ‘时间 触发事件文件名称 触发的事件名称’
目录 /home/wwwroot/default/tongbu/
1 | /usr/local/inotify/bin/inotifywait -mrq -e 'create,delete,close_write,attrib,moved_to' --timefmt '%Y-%m-%d %H:%M' --format '%T %f %e' /home/wwwroot/default/tongbu/ |
19-2. 监听 /home/ 目录内所有文件和目录的操作 , 监听内容 modify,delete,create,attrib,move,open,close,access
监听内容 modify,delete,create,attrib,move,open,close,access
指定%T格式为 ‘年-月-日 小时:分钟’
设置打印屏幕的格式 ‘时间 触发事件文件名称 触发的事件名称’
目录 /home/
1 | /usr/local/inotify/bin/inotifywait -mrq -e 'modify,delete,create,attrib,move,open,close,access' --timefmt '%Y-%m-%d %H:%M' --format '%T %f %e' /home/ |
20. 现在我们打开另外一个窗口对/home目录进行操作,发现全部被监控