gpt4 book ai didi

linux - 当存在具有特定名称的文件但忽略同名目录时退出脚本

转载 作者:太空宇宙 更新时间:2023-11-04 03:54:44 25 4
gpt4 key购买 nike

如果名为“output”的文件已经存在,而不是目录,则脚本应显示错误并退出。

这是我到目前为止的代码

for file in *
do
if [ ! -f output ]
then echo "error"
exit 1
fi
done

最佳答案

for file in *; do
if [ "$file" = "output" -a -f "$file" ]; then
echo "error"
exit 1
fi
done

或者

for file in *; do
if [ "$file" = "output" ] && [ -f "$file" ]; then
echo "error"
exit 1
fi
done

对于 bash,这是首选:

for file in *; do
if [[ $file == output && -f $file ]]; then
echo "error"
exit 1
fi
done

如果您想检查文件名是否包含该单词,而不仅仅是完全匹配:

for file in *; do
if [[ $file == *output* && -f $file ]]; then
echo "error"
exit 1
fi
done

关于linux - 当存在具有特定名称的文件但忽略同名目录时退出脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25165689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com