type
— это оболочка, встроенная в Bash и другие оболочки, такие как Zsh и Ksh. Его поведение может немного отличаться от оболочки к оболочке. Мы рассмотрим встроенную в Bash версию type
.
Синтаксис команды type
следующий:
type [OPTIONS] FILE_NAME...
Например, чтобы найти тип команды wc
, вы должны ввести следующее:
type wc
Результат будет примерно таким:
wc is /usr/bin/wc
Вы также можете предоставить более одного аргумента команде type
:
type sleep head
Вывод будет включать информацию о командах sleep
и head
:
sleep is /bin/sleep
head is /usr/bin/head
Типы команд
Параметр -t
указывает type
напечатать одно слово, описывающее тип команды, которое может быть одним из следующих:
- псевдоним (псевдоним оболочки)
- функция (функция оболочки)
- встроенный (встроенный в оболочку)
- файл (файл на диске)
- ключевое слово (зарезервированное слово оболочки)
Вот несколько примеров:
- Псевдоним
type -t grep
В моей системе
grep
имеет псевдонимgrep --color=auto
:alias
- Функция
type -t rvm
rvm
— это инструмент (функция) для установки, управления и работы с несколькими средами Ruby :function
- Встроенный
type -t echo
echo
— это оболочка, встроенная в Bash и другие оболочки, такие как Zsh и Ksh:builtin
- файл
type -t cut
cut
— это исполняемый файл:builtin
- Ключевое слово
type -t for
for
— зарезервированное слово в Bash:keyword
Показать все местоположения, содержащие команду
Чтобы распечатать все совпадения, используйте параметр -a
:
type -a pwd
Вывод покажет вам, что pwd
— это встроенная оболочка, но она также доступна как автономный исполняемый файл /bin/pwd
:
pwd is a shell builtin
pwd is /bin/pwd
Когда используется опция -a
, команда type будет включать псевдонимы и функции, только если опция -p
не используется.
Опции команд другого типа
Параметр -p
заставит type
вернуть путь к команде, только если команда является исполняемым файлом на диске:
Например, следующая команда не будет отображать никаких выходных данных, потому что команда pwd
является встроенной оболочкой.
type -p pwd
В отличие от -p
, опция -P
в верхнем регистре указывает type
искать по PATH
исполняемого файла на диске, даже если команда не является файлом.
type -P pwd
pwd is /bin/pwd
Когда используется опция -f
, type
не будет искать функции оболочки, как со встроенной командой.
Выводы
Команда type
покажет вам, как будет интерпретироваться конкретная команда, если она используется в командной строке.
Добавить комментарий