Пример команды псевдоним | |
Автор (ы) | Билл Джой |
---|---|
Разработчик (и) | Различные разработчики с открытым исходным кодом и коммерческие разработчики |
Операционная система | Unix, Unix-подобная, AmigaDOS, Microsoft Windows, ReactOS, AROS, KolibriOS, IBM i |
Платформа | Кросс-платформенность |
Тип | Команда |
В вычислениях, псевдоним - это команда в различных интерпретаторы командной строки (оболочки ), которые позволяют заменять слово другой строкой. Он в основном используется для сокращения системной команды или для добавления аргументов по умолчанию к регулярно используемой команде. псевдоним
доступен в оболочках Unix, AmigaDOS, 4DOS / 4NT, KolibriOS, Windows PowerShell, ReactOS и оболочка EFI. Функциональность наложения псевдонимов в операционных системах MS-DOS и Microsoft Windows обеспечивается служебной программой командной строки DOSKey.
Псевдоним будет действовать в течение всего сеанса оболочки. Регулярно используемые псевдонимы можно установить из файла rc оболочки (например, .bashrc
), чтобы они были доступны при запуске соответствующего сеанса оболочки. Команды псевдонима могут быть записаны либо непосредственно в конфигурационный файл, либо получены из отдельного файла.
В Unix псевдонимы были введены в оболочке C и сохраняются в дочерних оболочках, таких как tcsh и bash. Псевдонимы оболочки C были строго ограничены одной строкой. Это было полезно для создания простых команд быстрого доступа, но не для создания более сложных конструкций. Более старые версии оболочки Bourne не предлагали псевдонимов, но предоставляли функции, которые более мощные, чем концепция псевдонимов csh. Концепция псевдонима из csh была импортирована в Bourne Again Shell (bash) и оболочку Korn (ksh). В оболочках, которые поддерживают как функции, так и псевдонимы, но не содержат параметризованных встроенных сценариев оболочки, рекомендуется использовать функции везде, где это возможно. Случаи, когда необходимы псевдонимы, включают ситуации, когда требуются связанные псевдонимы (bash и ksh). Команда alias также была перенесена в операционную систему IBM i.
Не- постоянные псевдонимы могут быть созданы путем предоставления пар имя / значение в качестве аргументов для команды псевдонима. В оболочках Unix синтаксис:
alias gc = 'git commit'
Соответствующий синтаксис в C shell или tcsh оболочка:
псевдоним gc "git commit"
Этот псевдоним означает, что когда команда gc
читается в оболочке, она будет заменена на git commit
, и вместо этого будет выполнена эта команда.
В оболочке 4DOS / 4NT следующий синтаксис используется для определения cp
как псевдонима для 4DOS копии
команда:
alias cp copy
Чтобы создать новый псевдоним в Windows PowerShell, можно использовать командлет new-alias
:
new-alias ci copy-item
Это создает новый псевдоним с именем ci
, который будет заменен командлетом copy-item
при выполнении.
В PowerShell нельзя использовать псевдоним для указания аргументов по умолчанию для команды. Вместо этого это должно быть сделано путем добавления элементов в коллекцию $ PSDefaultParameterValues, одну из предпочтительных переменных PowerShell.
Для просмотра определенных псевдонимов можно использовать следующие команды:
alias # Используется без аргументов; отображает список всех текущих псевдонимов alias -p # Список псевдонимов таким образом, чтобы можно было воссоздать их путем получения вывода; недоступно в 4DOS / 4NT и PowerShell alias myAlias # Отображает команду для определенного псевдонима
В оболочках Unix можно переопределить псевдоним, заключив в кавычки любой символ в имени псевдонима при использовании псевдоним. Например, рассмотрим следующее определение псевдонима:
alias ls = 'ls -la'
Чтобы переопределить этот псевдоним и выполнить команду ls
в том виде, в каком она была изначально определена, можно использовать следующий синтаксис:
'ls'
или
\ ls
В оболочке 4DOS / 4NT можно переопределить псевдоним, поставив перед ним звездочку. Например, рассмотрим следующее определение псевдонима:
alias dir = * dir / 2 / p
Звездочка во втором экземпляре dir
вызывает вызов unaliased dir
, предотвращая рекурсивное расширение псевдонима. Также пользователь может получить в командной строке поведение dir
без элиализа, используя тот же синтаксис:
* dir
в Windows PowerShell, команду set
можно использовать с командлетом alias
для изменения существующего псевдонима:
set-alias ci cls
Псевдоним ci
теперь будет указывать на команду cls
.
В оболочке 4DOS / 4NT команда eset
предоставляет интерактивную командную строку для редактирования существующего псевдонима:
eset / a cp
/ a
вызывает редактирование псевдонима cp
, в отличие от переменной среды с тем же именем.
В оболочках Unix и 4DOS / 4NT псевдонимы можно удалить, выполнив команду unalias
:
unalias copy # Удаляет псевдоним копии unalias - a # Ключ -a удаляет все псевдонимы; недоступно в 4DOS / 4NT
unalias * # 4DOS / 4NT эквивалент ʻunalias -a` - подстановочные знаки поддерживаются В Windows PowerShell псевдоним можно удалить с диска alias: \ с помощью remove-item
:
remove-item alias: ci # Удаляет псевдоним ci
Псевдоним обычно заменяет только первое слово. Но некоторые оболочки, такие как bash
и ksh
, позволяют заменять последовательность или слова. Эта особенность недоступна через функциональный механизм.
Обычный синтаксис - определить первый псевдоним с помощью символа пробела в конце. Например, используя два псевдонима:
alias list = 'ls' # обратите внимание на конечный пробел для запуска цепочки alias long = '- Flas' # параметры ls для длинного списка
разрешает:
list long myfile # становится "ls -Flas myfile" при запуске
для длинного списка, где "long" также оценивается как псевдоним.
В оболочке C аргументы могут быть встроены в команду с помощью строки \! *. Например, с этим псевдонимом:
alias ls-more 'ls \! * | more '
ls-more / etc / usr
заменяется на ls / etc / usr | more
для вывода содержимого каталогов / etc и / usr с паузой после каждого перехода на экран. Без \! *,
псевдоним ls-more 'ls | more '
вместо этого расширится до ls | more / etc / usr
, который неправильно пытается открыть каталоги в more.
Оболочки Bash и Korn вместо этого используют функции оболочки - см. § Альтернативы ниже.
Псевдонимы обычно должны быть простыми. Там, где это будет непросто, обычно рекомендуется использовать одно из следующих:
PATH
(например, /bin
). Этот метод полезен для обеспечения дополнительного способа вызова команды и в некоторых случаях может разрешить доступ к скрытой функции команды для небольшого числа команд, которые используют свое имя вызова для выбора режима работы.rm
, cp
, mv
и т. Д.).Наиболее распространенная форма псевдонимов, которые просто добавляют несколько параметров к команде, а затем включают остальную часть командной строки, можно легко преобразовать в функции оболочки по следующему шаблону:
alias ll = 'ls -Flas' # длинный список, псевдоним ll () {ls -Flas "$ @"; } # длинный список, функция
Чтобы функция не вызывала себя рекурсивно, используйте command
:
ls () {command ls --color = auto "$ @" ; }
В старых оболочках Bourne используйте / bin / ls
вместо command ls
.
В Викибуке Руководство по Unix есть страница по темам: Команды |
псевдоним
: определение или отображение псевдонимов - Справочник по командам и утилитам, Спецификация единой UNIX, выпуск 7 из Справочная страница Open Group