두 변수를 동시에 검사하는 IF 문을 작성하려고 합니다.
예를 들어 $VARA $VARB와 같은 두 개의 변수가 있습니다.
둘 다 0 또는 0이 아닌 값을 포함합니다. 둘 다 확인하고 하나가 0이 아니면 하나의 작업을 수행하고 둘 다 0이면 다른 작업을 수행하는 if 문이 필요합니다.
단일 변수를 사용하면 다음과 같이 할 수 있습니다.
if [ $VARA -ne 0 ]
then echo 'The operation failed! VARA is not equal to 0'
else echo 'The operation suceeded! VARA is equal to 0'
fi
그런데 VARA와 VARB를 동시에 확인하는 방법을 모르겠습니다. 감사해요.
답변1
if [ "$VARA" -eq 0 ] && [ "$VARB" -eq 0 ]
then echo 'both are zero, do something'
else echo 'do something else'
fi
답변2
if (( var_a == 0 && var_b == 0 )); then
# ...
fi
Bash에서는 산술 평가를 위해 항상 (( ... ))를 사용합니다.