Bash监控目录并将文件移动到新位置

时间:2014-11-12 03:30:41

标签: linux bash inotifywait

我希望监视目录中是否有写入目录的新csv文件 创建时新的csv文件将附加数据。 一旦文件被写入并关闭。 该文件需要移动到一个新目录。

Monitor dir: /tmp/test/test/  
destination dir for copy : /tmp/test/test1/

我已完成以下脚本但在运行时会移动整个目录而不是文件,请帮助

#!/bin/bash


inotifywait -m --format '%w%f' /tmp/test/test/ -e close | while read file;  
do  
mv "$file" "/tmp/test/test1/"  
done

1 个答案:

答案 0 :(得分:0)

ifnotify也会在本地目录上通知。当它这样做时,你移动文件。

您可以将代码修改为此代码以使其正常工作:

    inotifywait -m --format '%w%f' /tmp/test/test/ -e close | while read file;
    do
        if [ "$file" != "/tmp/test/test" ] then
            mv "$file" "/tmp/test/test1"
        fi
    done