Когда я использую одиночное сравнение if, сравнение if работает, но когда я собираю несколько сравнений, утверждение никогда не проходит.
a=0
b=0
c=0
if [ $c -eq 0 ]; then
echo "test"
exit
fi
if [ $a -eq 0 ] && [ $b -eq 0 ] && [ $c -eq 0 ];then
echo "error"
exit
fi
Второй оператор if должен выполняться, но никогда не выполняется.
Я также выполняю это на параметрах ранее.
if [ -e a ];then
let a=a+1
fi
for f in *.c ; do
if [ -e ${f} ];then
let b=b+1
fi
done
for f in *.h; do
if [ -e ${f} ];then
let c=c+1
fi
done
Этот цикл завершается со всеми 0 для всех переменных.