Alias

Skrót powłoki rozwijający się w dłuższe polecenie, np. 'll’ zamiast 'ls -la’. Pozwala oszczędzić pisanie często używanych komend.

Alias to skrót w powłoce (shell), który podmienia krótkie słowo na dłuższe polecenie. Zamiast za każdym razem wbijać ls -la --color=auto, definiujesz raz ll i od tej pory wpisujesz dwie litery. Powłoka rozwija alias do pełnej komendy tuż przed jej wykonaniem — to czysta oszczędność klawiszy i nerwów, nie żadna magia.

Jak to działa

Alias żyje w pamięci aktualnej sesji powłoki. Definiujesz go poleceniem alias nazwa='polecenie', a gdy potem wpiszesz nazwa, shell w pierwszej kolejności sprawdza, czy nie pasuje ona do jakiegoś aliasu, i dopiero potem szuka prawdziwego programu. Rozwinięcie działa tylko na początku polecenia — alias to nie funkcja, więc argumenty po prostu doklejają się na końcu rozwiniętego tekstu.

Haczyk: alias zdefiniowany w terminalu znika po zamknięciu sesji. Żeby przetrwał, wrzucasz go do pliku startowego powłoki — w Bashu zwykle ~/.bashrc, w Zsh ~/.zshrc. Po edycji odświeżasz konfigurację przez source ~/.bashrc albo otwierasz nowy terminal. Listę wszystkich aktywnych aliasów zobaczysz, wpisując samo alias.

Przykład z praktyki

Najczęstsze aliasy to skróty do rzeczy, które robisz po sto razy dziennie:

  • alias ll='ls -la' — pełny listing z ukrytymi plikami
  • alias gs='git status' — bo kto chce pisać git status w kółko
  • alias ..='cd ..' — skok katalog wyżej
  • alias grep='grep --color=auto' — kolorowanie na stałe

Ten ostatni to klasyczny trik: nadpisujesz nazwę istniejącego polecenia własną, ulepszoną wersją. Działa, bo alias ma pierwszeństwo przed programem o tej samej nazwie.

Na co uważać

Jeśli kiedyś nadpiszesz polecenie aliasem (np. rm), a chcesz jednorazowo uruchomić oryginał, poprzedź nazwę odwrotnym ukośnikiem: \rm plik omija alias. To samo da command rm plik.

Druga pułapka: alias nie przyjmuje argumentów w środku. Jeśli potrzebujesz wstawić parametr gdzieś poza końcem polecenia albo użyć logiki, alias nie wystarczy — wtedy sięgasz po funkcję powłoki, która działa jak mini-program. I uwaga na aliasy w skryptach: domyślnie nie są one rozwijane w skryptach Bash, więc nie licz na nie w automatyzacji — tam używaj pełnych komend albo funkcji.

Pojęcia powiązane

Warto kojarzyć z tym: shell (Bash, Zsh), pliki konfiguracyjne .bashrc i .zshrc, funkcje powłoki, zmienne środowiskowe oraz polecenie type, którym sprawdzisz, czy dana nazwa to alias, funkcja, czy zwykły program.