Cron sh-在目录出现时删除它

Cron sh-在目录出现时删除它,cron,sh,resource-cleanup,Cron,Sh,Resource Cleanup,在我的应用程序中,每当我打开VS2013时,都会生成一个恼人的文件夹,这会导致我的整个构建失败。该文件夹有一些我不想要的旧依赖项。我不想费心去找出它出现在那里的原因:我只想在VS2013启动时它消失 我需要一个简单的脚本删除它时,它出现。要删除目录,请执行以下操作: rm -rf FolderThatWontGoAway 但是有没有办法神奇地告诉sh脚本在文件系统中出现时删除某些内容?比如: if [[ -z $(find -name "FolderThatWontGoAway") ]]; t

在我的应用程序中,每当我打开VS2013时,都会生成一个恼人的文件夹,这会导致我的整个构建失败。该文件夹有一些我不想要的旧依赖项。我不想费心去找出它出现在那里的原因:我只想在VS2013启动时它消失

我需要一个简单的脚本删除它时,它出现。要删除目录,请执行以下操作:

rm -rf FolderThatWontGoAway
但是有没有办法神奇地告诉
sh
脚本在文件系统中出现时删除某些内容?比如:

if [[ -z $(find -name "FolderThatWontGoAway") ]];
then 
    echo "Folder is not here."
else
     #remove!
     rm -rf FolderThatWontGoAway 
fi

注意:cron不合适,因为我打开和关闭VS2013太不稳定,不知道该作业应该运行多久

您可以使用
inotifywait
执行此操作。大概是这样的:

inotifywait -m -e create . | 
while read dir ev file
do 
    if [ -d "$file" ] && [ "$file" == "FolderThatWontGoAway" ]
    then 
        rm -rf "$file"
    fi
done

这将监视当前目录中的“创建”事件。如果创建了一个名为“FolderThatWontGoAway”的新目录,它将删除该文件夹及其内容。

不幸的是,我一直在使用Windows,但在快速的Google搜索后,我发现:作为inotify的替代。抱歉,我假设因为问题有一个
sh
标记,您使用的是某种基于Unix的系统。我认为更好的解决方法是修复您的构建过程,这样它不感兴趣的目录的存在不会最终混淆它。。。。