W skrypcie bashW jaki sposób słowo kluczowe "jeśli" sprawdza, czy wartość ma wartość false?
if [ 1 ]
then
echo "Yes"
else
echo "No"
fi
wyjściowa: Yes
To oznacza, że '1' jest traktowany jako prawdziwą wartość.
Ale w kodzie:
word = Linux
letter = nuxi
if echo "$word" | grep -q "$letter"
then
echo "Yes"
else
echo "No"
fi
wyjściowa: Nie
Ale echo "$word" | grep -q "$letter"
powróci 1, dlaczego wynik jest nr
jak słowo kluczowe if
testu wartość zwracana przez komendę po if
?
można znaleźć [moja odpowiedź tutaj] (http://stackoverflow.com/questions/3869072/test-for-non-zero-length-string-in-bash-n-var-or-var/3870055 # 3870055), aby był przydatny. –