Предположим, у меня есть псевдоним в оболочке bash. Есть ли простая команда, чтобы распечатать, какую команду будет выполнять псевдоним?
То type
встроенный модуль полезен для этого. Он расскажет вам не только об псевдонимах, но и о функциях, встроенных файлах, ключевых словах и внешних командах.
$ type lsls is aliased to `ls --color=auto'$ type rmrm is /bin/rm$ type cdcd is a shell builtin$ type psgreppsgrep is a functionpsgrep () { ps -ef | { read -r; printf '%s\n' "$REPLY"; grep --color=auto "$@" }}
type -a cmd
покажет все команды с этим именем в порядке приоритета, что полезно для ls
псевдоним выше, где сам псевдоним вызывает ls
.
$ type -a lsls is aliased to `ls --color=auto'ls is /bin/ls
Это говорит вам о том, что когда вы запускаете ls
, /bin/ls
будет использоваться, и --color=auto
будут включены в его список аргументов в дополнение к любым другим, которые вы добавите сами.
Просто введите alias
находясь в командной строке командной строки. Он должен вывести список всех активных в данный момент псевдонимов.
Или же вы можете ввести alias [command]
чтобы увидеть, к какому конкретному псевдониму относится псевдоним, в качестве примера, если вы хотите узнать, что ls
псевдоним был присвоен псевдониму, вы могли бы сделать alias ls
.
Мне очень нравится Ctrl+Alt+E как я узнал от этот ответ. Он "расширяет" введенную в данный момент командную строку, что означает, что он выполняет расширение псевдонима (среди прочего).
Что это значит? Он превращает любой псевдоним, который в данный момент может быть записан в командной строке, в то, что обозначает псевдоним.
Например, если я наберу:
$ ls
а затем нажмите Ctrl+Alt+E, он превращается в
$ ls --time-style=locale --color=auto
Строго говоря, правильным ответом является использование массива BASH_ALIASES, например:
$ echo ${BASH_ALIASES[ls]}ls -F --color=auto --show-control-chars
Вы могли бы использовать which
команда.
Если вы задаете псевдоним для ls
как ls -al
а затем введите which ls
, вы увидите:
ls: aliased to ls -al
.
На терминале
$ alias | grep ALIAS
Выходы
ALIAS='some_command'
Заменять ALIAS
с вашим псевдонимом.