错误处理认为一切都是错误的

时间:2015-04-13 04:04:41

标签: bash shell error-handling scripting

我做了一个简短的脚本,将一个扩展名的所有文件更改为不同的扩展名。两个扩展都由用户通过命令行参数输入。我输入了一个if语句来处理错误,但由于某种原因,它认为一切都是错误的,我不知道为什么。我已粘贴下面的脚本。我是新手来编写脚本,所以任何帮助都会非常感激!

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 个答案:

答案 0 :(得分:1)

[[ "$1" || "$2" != "."* ]]应为[[ "$1" != .* ]] || [[ "$2" != .* ]]