2015-04-13 4 views
0

Я сделал короткий скрипт, который изменяет все файлы с одним расширением на другое расширение. Оба расширения вводятся пользователем через аргументы командной строки. Я вставлял оператор 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

[[ "$1" || "$2" != "."* ]] должен быть [[ "$1" != .* ]] || [[ "$2" != .* ]]