我在centos 6盒子上有samba共享目录,我只是想确保共享目录中的所有文件都必须是windows可执行文件(.exe), 有没有办法在samba共享之后根据它们的mimetype搜索samba共享上的所有目录" application / x-dosexec' mime类型文件并删除其余文件。
我试过
for i in /mnt/storage/SAMBA/*
do
[ x"$(file --mime -b "$i")" != application/x-dosexec ] && echo rm "$i"
done
但他们不会递归搜索
答案 0 :(得分:1)
使用find
,选项-type f
会将搜索限制为仅文件:
find /mnt/storage/SAMBA/ -type f | while read i ; do ... ; done
请注意,您在比较中忘记了x
。它必须是xapplication/x-dosexec
,否则您将删除所有文件。