Alias (команда)
Alias — це команда в різних інтерпретаторах командного рядка, яка дозволяє замінити слово іншим рядком. В основному він використовується для скорочення системної команди або для додавання аргументів за замовчуванням до регулярно використовуваної команди. Alias доступний в оболонках Unix, AmigaDOS, 4DOS/4NT, KolibriOS, Windows PowerShell[1], ReactOS та оболонці EFI. Команди alias можуть бути записані безпосередньо в файлі конфігурації або отримані з окремого файлу.
Історія
ред.У Unix alias були введені в оболонку C і зберігаються в оболонках-нащадках, таких як tcsh і bash. Псевдоніми оболонки C були строго обмежені одним рядком. Це було корисно для створення простих команд швидкого доступу, але не більш складних конструкцій. Концепція псевдоніма з csh була імпортована в оболонку Korn (ksh). З оболонками, які підтримують і функції, і псевдоніми, але без параметризованих вбудованих сценаріїв оболонки, рекомендується використовувати функції, де це можливо.
Використання
ред.Створення alias
ред.Unix
ред.Непостійні псевдоніми можна створити, надавши ім'я/значення як аргументи для команди псевдоніма. В оболонках Unix синтаксис такий[2][3][4]:
alias gc='git commit'
C shell
ред.Синтаксис в оболонці C[5] або tcsh такий:
alias gc "git commit"
Цей псевдонім означає, що коли команда gc читається в оболонці, вона буде замінена на git commit, і ця команда буде виконана.
4DOS
ред.У оболонці 4DOS/4NT використовується наступний синтаксис, щоб визначити cp як псевдонім для команди копіювання 4DOS:
alias cp copy
Windows PowerShell
ред.Щоб створити новий псевдонім у Windows PowerShell, можна використовувати New-Alias
[6]:
new-alias ci copy-item
Це створює новий псевдонім під назвою ci, який під час виконання буде замінено на copy-item.
Перегляд поточних alias
ред.Для перегляду існуючих псевдонімів можна використовувати такі команди:
alias #Використовується без аргументів; відображає список усіх поточних alias
alias -p #Перерахуйте alias таким чином, щоб дозволити повторне створення шляхом отримання вихідних даних
alias myAlias #Відображає команду для існуючого alias
Перевизначення alias
ред.У оболонках Unix можна перевизначати, вводячи в лапки будь-який символ в імені alias під час його використання. Наприклад, розглянемо таке визначення:
alias ls='ls -la'
Щоб замінити цей alias і виконати команду ls, як вона була визначена спочатку, можна використовувати такий синтаксис:
'ls' або \ls
У оболонці 4DOS/4NT можна замінити alias, поставивши до нього префікс зірочки. Наприклад, розглянемо таке визначення:
alias dir = *dir /2/p
Зміна alias
ред.У Windows PowerShell дієслово set можна використовувати з командлетом alias, щоб змінити існуючий:
set-alias ci cls
Псевдонім ci тепер вказуватиме на команду cls. У оболонці 4DOS/4NT команда eset надає інтерактивний командний рядок для редагування існуючого alias:
eset /a cp
/a викликає редагування псевдоніма cp, на відміну від змінної середовища з такою ж назвою.
Видалення alias
ред.В оболонках Unix і 4DOS/4NT alias можна видалити, виконавши команду unalias:
unalias copy #видаляє копію alias
unalias -a #-a switch видалить усі alias
unalias * #4DOS/4NT еквівалент `unalias -a` - підтримуються символи підстановки
Особливості
ред.Послідовність
ред.Alias зазвичай замінює лише перше слово. Але деякі оболонки, такі як bash і ksh, дозволяють замінювати послідовність або слова. Ця конкретна функція недоступна через механізм функцій.
Звичайний синтаксис полягає у визначенні першого alias за допомогою пробілу в кінці. Наприклад, використовуючи два alias:
alias list='ls ' #зверніть увагу на кінцевий пробіл, щоб запустити послідовність
alias long='-Flas' #параметри для ls для довгого списку
Аргументи команди
ред.У командній оболонці C аргументи можуть бути вбудовані всередину команди за допомогою рядка \!*. Наприклад, з таким alias:
alias ls-more 'ls \!* | more'
Натомість оболонки Bash і Korn використовують функції оболонки — див Альтернативи нижче.
Альтернативи
ред.Найпоширенішу форму alias, які просто додають кілька параметрів до команди, а потім включають решту командного рядка, можна легко перетворити на функції оболонки за цим шаблоном:
alias ll='ls -Flas' #довгий список, alias
ll () { ls -Flas "$@" ; } #довгий список,функція
Щоб запобігти рекурсивному виклику функції, використовуйте команду:
ls () { command ls --color=auto "$@" ; }
У старих оболонках Борна використовуйте /bin/ls замість команди ls.
Див. також
ред.Зноски
ред.- ↑ about Aliases - PowerShell. learn.microsoft.com (амер.). 6 лютого 2023. Процитовано 12 жовтня 2023.
- ↑ Tijink, Stephan. Der Shell-Befehl alias. Pro-Linux (нім.). Процитовано 15 жовтня 2023.
- ↑ alias › Wiki › ubuntuusers.de. wiki.ubuntuusers.de. Процитовано 15 жовтня 2023.
- ↑ alias(1p) - Linux manual page. man7.org. Процитовано 15 жовтня 2023.
- ↑ Alias substitution in the C shell. www.ibm.com (амер.). 6 лютого 2023. Процитовано 12 жовтня 2023.
- ↑ New-Alias (Microsoft.PowerShell.Utility) - PowerShell. learn.microsoft.com (амер.). Процитовано 15 жовтня 2023.