使用watch每秒两次复制目录中的新文件

时间:2015-07-22 15:45:12

标签: unix watch cp

我有一个文件夹(foo),我希望每秒检查两次。如果该文件夹中有任何新文件,我想将其复制到第二个文件夹(foo2)。我想用watch和cp。我正在使用tcsh。

怎么做?

这就是我的尝试:

touch lastChanged
watch --interval=.5 'if [[ $(ls foo) ]] then cp $; else echo "nothing new";fi

1 个答案:

答案 0 :(得分:0)

这似乎对我有用。我愿意接受更好的答案。

touch lastChecked
watch --interval=.5 'if [[ $(find foo -newer lastChecked -ls -exec cp {} foo2 \; then touch lastChecked; else echo "nothing new"; fi 

每秒观察两次。

查找比" lastChecked"更新的文件。归档并复制这些文件。

然后触摸lastChecked。

触摸lastChecked也可以在文件更新时进行cping。