if [ "$p" = 0 ] && [ "$n" = 0 ]; then
return 1
else
return 0
fi
Запускал скрипт через bash -x ./script и заметил, что проверяется только первое условие. Выглядит это примерно так:
+ '[' 0 = 0 ']'
Скажем у меня переменная $p получилась равной "0", а переменная $n равна "1". Первая проверка удовлетворяет условию, а вторая нет. Но второй проверки нет вообще в выводе "bash -x". Наверное так делать и нельзя? (скрипт выдает "return 1")...
Короче. Не знаю какого черта, но я поставил запись типа
if [ $p -eq 0 -a $n -eq 0 ]; then
echo "success"
else
echo "fail"
fi
и вроде проканало. Выдало fail наконец. Если сделать то же только написать -ne и заменить success и fail местами - не отрабатывает...