В скрипте bash
if [ 1 ]
then
echo "Yes"
else
echo "No"
fi
Выход: Yes
Это означает, что "1" рассматривается как истинное значение.
Но в коде:
word = Linux
letter = nuxi
if echo "$word" | grep -q "$letter"
then
echo "Yes"
else
echo "No"
fi
Выход: No
Но echo "$word" | grep -q "$letter"
echo "$word" | grep -q "$letter"
вернет 1, так почему результат - No
.
Как работает ключевое слово if
проверить значение, возвращаемое командой после if
?