Кілька днів тому я був задоволений своєю відповіддю. Я також знав, що which
команда не використовується для перевірки наявності команди. Зараз я не дуже задоволений своєю відповіддю, і я посилаюся на цю чудову відповідь .
За допомогою простої which
команди:
which foo.sh
Або type
команда:
type foo.sh
І ви можете впливати на це порядком шляхів у вашому $PATH
або через абсолютний шлях при запуску сценарію, EG
/home/user/scripts/foo.sh
Приклад
Якщо PATH визначено, як показано нижче
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
І ви запускаєте скрипт або щось інше, що є в /usr/local/bin
і в /usr/bin
, сценарій в /usr/local/bin
як вищий пріоритет.
bash
іzsh
є такожtype
вбудований; натомість вzsh
which
, інакше відbash
, є вбудований (а не/usr/bin/which
)