oto co próbuję achive:W bash, możesz użyć wywołania funkcji jako warunku w instrukcji if?
function f1() {
return 0
}
function f2() {
return 0
}
if [[ f1 && f2 ]]; then
echo "success"
else
echo "fail"
fi
oto co próbuję achive:W bash, możesz użyć wywołania funkcji jako warunku w instrukcji if?
function f1() {
return 0
}
function f2() {
return 0
}
if [[ f1 && f2 ]]; then
echo "success"
else
echo "fail"
fi
Nie używać [[
(lub [
) podczas uruchamiania polecenia i sprawdzając kod wynikowy.
if f1 && f2 ; then
echo "success"
else
echo "fail"
fi
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
Nie można użyć '$ (...)', aby uzyskać wartości zwracane. –
Dobrze. Tylko echo. Ustalenie. – evan
Niesamowite - dziękuję! –