在 bash 中,我有一个目录,其中包含一些以下划线开头的文件名_
和其他不以下划线开头的文件名。
我希望我的脚本检查文件夹中是否有任何不以_
.我写的
if [[ -f $dir/[!_]* ]]
then echo "There are unmarked files."
else echo "All files marked."
fi
但是,当我使用包含以 和 不以 开头的文件的文件夹运行时_
,该if
语句与我的预期效果相反。我列出了文件夹中清楚显示不带 的文件的条目_
,但输出一直显示,All files marked.
我缺少什么?
答案1
if find -not -name '_*' -exec false {} +
then
echo 'all files marked'
else
echo 'unmarked file found'
fi