2011-11-14 9 views

Odpowiedz

52

Nie używać [[ (lub [) podczas uruchamiania polecenia i sprawdzając kod wynikowy.

if f1 && f2 ; then 
    echo "success" 
else 
    echo "fail" 
fi 
+0

Niesamowite - dziękuję! –

3

Tak. Można to zrobić poprzez sprawdzenie przed powrotem za pomocą echa (choć nie jest to ścisłe powrót):

if [[ "$(f1)" == "whatever" ]] działa

Zobacz aktualizacja bardziej na wartości zwracanej przez funkcję. Ma też kilka dobrych komentarzy, szczególnie mówiących o stwierdzeniach, czy.

http://www.linuxjournal.com/content/return-values-bash-functions

+2

Nie można użyć '$ (...)', aby uzyskać wartości zwracane. –

+0

Dobrze. Tylko echo. Ustalenie. – evan

Powiązane problemy