Alias — це команда в різних інтерпретаторах командного рядка, яка дозволяє замінити слово іншим рядком. В основному він використовується для скорочення системної команди або для додавання аргументів за замовчуванням до регулярно використовуваної команди. Alias доступний в оболонках Unix, AmigaDOS, 4DOS/4NT, KolibriOS, Windows PowerShell, ReactOS та оболонці EFI. Команди alias можуть бути записані безпосередньо в файлі конфігурації або отримані з окремого файлу.

Історія У Unix alias були введені в оболонку C і зберігаються в оболонках-нащадках, таких як tcsh і bash. Псевдоніми оболонки C були строго обмежені одним рядком. Це було корисно для створення простих команд швидкого доступу, але не більш складних конструкцій. Концепція псевдоніма з csh була імпортована в оболонку Korn (ksh). З оболонками, які підтримують і функції, і псевдоніми, але без параметризованих вбудованих сценаріїв оболонки, рекомендується використовувати функції, де це можливо.

Використання

Створення alias

Unix Непостійні псевдоніми можна створити, надавши ім'я/значення як аргументи для команди псевдоніма. В оболонках Unix синтаксис такий: alias gc='git commit'

C shell Синтаксис в оболонці C або tcsh такий: alias gc "git commit" Цей псевдонім означає, що коли команда gc читається в оболонці, вона буде замінена на git commit, і ця команда буде виконана.

4DOS У оболонці 4DOS/4NT використовується наступний синтаксис, щоб визначити cp як псевдонім для команди копіювання 4DOS: alias cp copy

Windows PowerShell

Щоб створити новий псевдонім у Windows PowerShell, можна використовувати New-Alias: 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.

Див. також Програми UNIX-подібних операційних систем chmod

Зноски