Я хочу узнать, существует ли какая-либо команда в любой системе POSIX из оболочки script.
В Linux я могу сделать следующее:
if which <command>; then
...snip...
fi
Однако Solaris и MacOS which
не выдают код сбоя выхода, когда команда не существует, они просто печатают сообщение об ошибке в STDOUT.
Кроме того, я недавно обнаружил, что сама команда which
не является POSIX (см. http://www.opengroup.org/onlinepubs/009695399/utilities/)
Любые идеи?