Как увидеть команду, связанную с псевдонимом bash?

Предположим, что у меня есть псевдоним в оболочке bash. Есть ли простая команда для печати какой команды будет выполняться псевдоним?

253 голоса | спросил Casebash 7 FebruaryEurope/MoscowbTue, 07 Feb 2012 07:24:25 +0400000000amTue, 07 Feb 2012 07:24:25 +040012 2012, 07:24:25

5 ответов


339

Для этого полезен встроенный тип type . Он не только расскажет вам об алиасах, но также о функциях, встроенных функциях, ключевых словах и внешних командах.

  $ type ls
ls имеет псевдоним `ls --color = auto '
$ type rm
rm равно /bin /rm
$ type cd
cd - встроенная оболочка
$ type psgrep
psgrep - функция
psgrep ()
{
    ps -ef | {
        read -r;
        echo "$ REPLY";
        grep --color = auto "$ @"
    }
}
 
ответил geirha 12 FebruaryEurope/MoscowbSun, 12 Feb 2012 13:52:43 +0400000000pmSun, 12 Feb 2012 13:52:43 +040012 2012, 13:52:43
125

Просто введите alias в командной строке. Он должен вывести список всех активных в настоящее время псевдонимов.

Или вы можете ввести alias [command] , чтобы увидеть, как в качестве примера используется псевдоним alias, если вы хотите узнать, что такое псевдоним ls был псевдонимом, вы могли бы сделать alias ls .

ответил Thomas Ward 7 FebruaryEurope/MoscowbTue, 07 Feb 2012 07:30:17 +0400000000amTue, 07 Feb 2012 07:30:17 +040012 2012, 07:30:17
51

Мне очень нравится Ctrl + Alt + E , как я узнал из этот ответ . Он «расширяет» введенную в настоящее время командную строку, что означает, что он выполняет расширение псевдонимов (между прочим).

Что это значит? Он превращает любой псевдоним, который в настоящее время записывается в командной строке, в то, что означает псевдоним.

Например, если я набираю:

  $ ls
 

, а затем нажмите Ctrl + Alt + E , он превращается в

  $ ls --time-style = locale --color = auto
 
ответил Der Hochstapler 13 FebruaryEurope/MoscowbMon, 13 Feb 2012 21:52:03 +0400000000pmMon, 13 Feb 2012 21:52:03 +040012 2012, 21:52:03
5

Строго говоря, правильный ответ заключается в использовании массива BASH_ALIASES, например:

  $ echo $ {BASH_ALIASES [ls]}
ls -F --color = auto --show-control-chars
 
ответил noonex 13 Jpm1000000pmFri, 13 Jan 2017 15:12:42 +030017 2017, 15:12:42
1

Вы можете использовать команду , которая .

Если вы установите псевдоним для ls как ls -al , а затем введите , который ls , вы увидите:

ls: aliased to ls -al .

ответил user312471 5 AM000000110000003831 2014, 11:36:38

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132