File 是否在检查文件更改的脚本中排除文件夹?
我有一个cronjob,它每24小时运行一次,告诉我服务器上的文件是否已更改。脚本如下所示:File 是否在检查文件更改的脚本中排除文件夹?,file,cron,cron-task,File,Cron,Cron Task,我有一个cronjob,它每24小时运行一次,告诉我服务器上的文件是否已更改。脚本如下所示: find /home/bsc1933 -type f -ctime -1 -exec ls -ls {} \; | mail -E -s “File Changes, Past 24 Hours” myemail 我想修改它以排除特定文件夹,在本例中是我的缓存文件夹:/home/bsc1933/public\u html/cache 我用Google fu找到了原始脚本,只是编辑了与我匹配的电子邮件,
find /home/bsc1933 -type f -ctime -1 -exec ls -ls {} \; | mail -E -s “File Changes, Past 24 Hours” myemail
我想修改它以排除特定文件夹,在本例中是我的缓存文件夹:/home/bsc1933/public\u html/cache
我用Google fu找到了原始脚本,只是编辑了与我匹配的电子邮件,所以我对实际编辑脚本本身的了解是不存在的。有人能帮我吗?尝试使用
grep
或find
忽略具有特定模式的条目
对于grep:
find /home/bsc1933 -type f -ctime -1 -exec ls -ls {} \; |grep -Ev "/home/bsc1933/public_html/cache" | mail -E -s “File Changes, Past 24 Hours” myemail
或者告诉find忽略它:
find /home/bsc1933 ! -path '*/.cache/*' -type f -ctime -1 -exec ls -ls {} \; | mail -E -s “File Changes, Past 24 Hours” myemail
最简单的答案如下,在“find”和“mail”命令之间添加“grep”以过滤出您希望排除的路径 如果你面临任何其他困难,请告诉我
`find /home/bsc1933 -type f -ctime -1 -exec ls -ls {} \; | grep -v '/home/bsc1933/public_html/cache' |` ... your code to send email ...