Ви можете використовувати type
або command -v
. Результат type
читається людиною; вихід command -v
Bash може бути виконаний Bash.
Зауважте, що насправді вони трохи відрізняються. type
і command
шукати хешоване значення команди. Тобто, якщо ви друкуєте cmd
, type cmd
або command -v cmd
скаже вам точно , що буде працювати. Вони також працюють над псевдонімами, функціями Bash і Bash вбудованими (хоча type -p
вони ігнорують ці і повертають лише справжні файли).
which
просто проводить пошук на ПАТ. Це інакше, тому що:
- Якщо є псевдонім, функція або вбудований з тим же ім'ям, він буде викликаний замість цього.
- Якщо команда була додана раніше в PATH з моменту останнього хешування, вона буде знайдена
which
, але виконавши цю команду, використовуватиме хешоване значення (ви можете змусити оновити хеш в Bash за допомогою hash -r
).
Зазвичай люди дуже хочуть type
, which
принаймні, не для інтерактивного використання, оскільки вони використовують його, щоб дізнатися, "звідки ця команда, коли я її виконую?" Вам слід користуватися, лише which
якщо ви дійсно хочете зробити пошук PATH.