我正在寻找一个脚本的帮助,该脚本允许我按计划将新目录的内容或整个目录复制到另一个目录,或者当新文件到达源时。
例如:
/stuff/folder1/file.txt
复制到:
/stuff/folder2/file.txt
在新文件到达时或在定期计划中。
我确实使用Centos机器。
答案 0 :(得分:2)
每当您保存新文件或更新folder2
时,您都可以使用以下程序更新folder1
:
while inotifywait -r -e modify -e move -e create -e delete; do
cp -r /stuff/folder1/. /stuff/folder2/
done
对于日程安排,我会将cp -r /stuff/folder1/. /stuff/folder2/
添加到cron job。您可以使用rsync代替cp
。另请查看manpage of inotifywait。
注意:上述脚本将在目录folder1
内更改第一个文件后启动副本。如果同时修改folder1中的许多文件,则可能需要在while循环中放置sleep
命令。但在这种情况下,最好在程序末尾添加复制命令,以改变folder1
的文件。