При разработке скриптов иногда используются различные утилиты, которые могут не входит в состав дистрибутива. К примеру в минимальной установке CentOS может не оказаться команды nslookup.
Для проверки наличия команды, необходимо использовать утилиту command.
Проверка существования команды в Linux
1 | command -v |
Если команда обнаружена в системе, то утилита вернет полный путь до исполняемого файла
1 2 | command -v ping /usr/bin/ping |
Проверка существования команды в Bash скрипте
Проверить наличие команды в скрипте можно следующей конструкцией.
1 2 3 4 5 6 7 8 | if ! command -v <Tools Name> &> /dev/null then echo "<Tools Name> could not be found" echo "install:" echo "apt-get update" echo "apt-get install <Tools Name>" exit 1 fi |
И при необходимости указать пример установки или вывести любую другую полезную информацию.