Всем доброго времени суток.
Подскажите, почему такая штука. Допустим, есть функция и из неё я возвращаю 0 или 1. Но, if
и test
по разному обрабатывают return
.
Допустим:
$ function test () { return 1; }
$ [[ test ]] && echo ok || echo not ok
ok
$ if test; then echo ok; else echo not ok; fi
not ok
Команда test
обрабатывает успешность выполнения функции или как это работает? Как можно еще обработать return
?