共计 1052 个字符,预计需要花费 3 分钟才能阅读完成。
文件监控能够配合 rsync 实现文件主动同步,例如监听某个目录,当文件变动时,应用 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 '%T %w %f %e' -e modify,delete,create,attrib
/usr/local/src
参数:
- -m 继续监听
- -r 应用递归模式监督目录
- -q 缩小冗余信息,只打印出须要的信息
- -e 指定要监督的事件,多个工夫应用逗号隔开
- –timefmt 工夫格局
- –format 监听到的文件变动的信息
- –timefmt 阐明:
- ymd 别离示意年月日,H 示意小时,M 示意分钟
–format 阐明: 执行下面的命令之后,在监听的目录下创立一个 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/sh
# 监督的文件或目录
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
shell 脚本后盾执行
nohup
应用 nohup,其中 test.sh 为所执行的脚本,out.txt 为输入信息的中央。
nohup sh test.sh>out.txt &
起源:https://www.cnblogs.com/youxi…
正文完