我做了一个简短的脚本,将带有一个扩展名的所有文件更改为另一个扩展名。这两个扩展名均由用户通过命令行参数输入。我输入了一个if语句来处理错误,但是由于某种原因,它认为所有内容都是错误,并且我不确定为什么。我在下面粘贴了脚本。我对bash脚本非常陌生,因此不胜感激!
if [[ "$#" == 0 ]] || [[ "$1" || "$2" != "."* ]]
then
echo "Parameters are not valid"
exit
fi
for f in *"$1"; do
name=${f%.*}
mv $f "$name$2"
done
最佳答案
[[ "$1" || "$2" != "."* ]]
应该是[[ "$1" != .* ]] || [[ "$2" != .* ]]
关于bash - 错误处理将一切都视为错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29597673/