ifの後にコマンド実行して判定
ifの後にコマンド実行して判定
if echo "123" | grep "2" > /dev/null; then
echo "FOUND"
else
echo "NOT FOUND"
fi
=> FOUND
if echo "123" | grep "4" > /dev/null; then
echo "FOUND"
else
echo "NOT FOUND"
fi
=> NOT FOUND
- ifの後のコマンド(ここでは echo "123" | grep "2" > /dev/null)が終了コード0を返すので、ifが通る。
コマンド実行した後に終了コードをifで判定
echo "123" | grep "2" > /dev/null
if [ $? -eq 0 ]; then
echo "FOUND"
else
echo "NOT FOUND"
fi
=> FOUND
ifの後の条件判定を逆にする(偽を通す)
if echo "123" | grep "4" > /dev/null; [ $? -ne 0 ]; then
echo "NOT FOUND"
fi
=> NOT FOUND
Bashの否定演算子 ! を使う
if ! echo "123" | grep "4" > /dev/null; then
echo "NOT FOUND"
fi
=> NOT FOUND