Robię porównanie ciąg między zmienną i stałą. Wynik porównania - true
lub false
jest przypisany do innej zmiennej.W bash, jak dokonać porównania i przypisać do zmiennej
Jednak zawodzę. Jakieś sugestie?
Robię porównanie ciąg między zmienną i stałą. Wynik porównania - true
lub false
jest przypisany do innej zmiennej.W bash, jak dokonać porównania i przypisać do zmiennej
Jednak zawodzę. Jakieś sugestie?
Można użyć expr
:
INPUT='flag'
LABEL=$(expr "${INPUT}" == "flag")
echo "$LABEL"
1
INPUT='flab'
LABEL=$(expr "${INPUT}" == "flag")
echo "$LABEL"
0
Prawdopodobnie jest łatwiejsze i może obejmować więcej przypadków testowych. Aby uzyskać więcej informacji na temat porównań ciągów i przypadków testowych za pomocą "testu man". Oto całkiem podstawowa próbka.
if [ "${INPUT}" == "flag" ]; then
LABEL=${INPUT}
fi
echo ${LABEL}
Czego chcesz 'LABEL' zawierać? Brak powodzenia? –
Twoje pytanie nie bardzo wyjaśnia, co chcesz uzyskać. Co chcesz umieścić w "LABEL", jeśli "$ INPUT" rozwija się na "flag", a co chcesz uzyskać w inny sposób? –
Dziękuję za komentarz, właśnie edytowałem :) – tashuhka