Provided by: manpages-pl_0.7-2_all bug

NAZWA

       bash - GNU Bourne-Again SHell

SKŁADNIA

       bash [opcje] [łańcuch_polecenia | plik]

PRAWA AUTORSKIE

       Bash is Copyright (C) 1989-2016 by the Free Software Foundation, Inc.

OPIS

       Bash   jest   zgodnym   z  sh  interpreterem  języka  poleceń,  wykonującym  polecenia  ze
       standardowego wejścia bądź z pliku.  Włączono doń również przydatne cechy  zaczerpnięte  z
       powłoki Korna i powłoki C (ksh i csh).

       Bash w zamierzeniu jest implementacją zgodną z POSIX-ową specyfikacją powłok i narzędzi --
       IEEE POSIX Shell and  Utilities  specification  (IEEE  Standard  1003.1).  Bash  może  być
       skonfigurowany w ten sposób, aby był domyślnie zgodny z normą POSIX.

OPCJE

       Oprócz  jednoznakowych  opcji powłoki udokumentowanych w opisie wbudowanego polecenia set,
       polecenia wbudowane mogą być użyte jako opcje przy wywołaniu powłoki. Dodatkowo, bash przy
       wywołaniu interpretuje poniższe opcje:

       -c        Jeśli  występuje  opcja  -c, to polecenia odczytywane są z pierwszego argumentu,
                 niebędącego opcją  łańcucha_polecenia.  Jeżeli  po  łańcuchu_polecenia  istnieją
                 argumenty,  to  pierwszy  jest przypisywany do $0 a pozostałe są przypisywane do
                 argumentów pozycyjnych.  Przypisanie  do  $0  ustawia  nazwę  powłoki,  co  jest
                 wykorzystywane przy ostrzeżeniach i komunikatach z błędami.
       -i        Jeżeli występuje opcja -i, to powłoka jest interaktywna.
       -l        Program  bash  będzie  działał  jakby  został wywołany jako powłoka zgłoszeniowa
                 (patrz niżej WYWOŁANIE).
       -r        Jeżeli występuje opcja -r, to powłoka staje się powłoką  okrojoną  (restricted).
                 Patrz poniżej POWŁOKA OKROJONA.
       -s        Jeśli  występuje  opcja  -s  lub  po  przetworzeniu  opcji  nie  pozostają żadne
                 argumenty, to polecenia  odczytywane  są  ze  standardowego  wejścia.  Opcja  ta
                 umożliwia   na  ustawienie  parametrów  pozycyjnych  podczas  wywołania  powłoki
                 interaktywnej.
       -D        Na standardowym wyjściu wypisywana jest lista łańcuchów  cytowanych  cudzysłowem
                 poprzedzonych  znakiem $.  Są to łańcuchy będące przedmiotem tłumaczenia języka,
                 gdy bieżącym ustawieniem regionalnym (locale) nie jest C ani  POSIX.   Implikuje
                 to opcję -n; nie zostaną wykonane żadne polecenia.
       [-+]O [opcja_shopt]
                 opcja_shopt  jest  jedną z opcji powłoki akceptowanych przez polecenie wbudowane
                 shopt  (zobacz  WBUDOWANE   POLECENIA   POWŁOKI   poniżej).    Jeśli   występuje
                 opcja_shopt,  to  -O nadaje wartość tej opcji, zaś +O unieważnia ją.  Jeżeli nie
                 podano opcji_shopt, to na standardowym wyjściu wypisywane są  nazwy  i  wartości
                 opcji  powłoki  akceptowanych  przez  shopt.   Jeśli  opcją  wywołania  jest +O,
                 tworzone wyjście jest formatowane w taki sposób, by można  było  wykorzystać  je
                 jako wejście.
       --        Zapis -- sygnalizuje koniec opcji i wyłącza dalsze ich przetwarzanie.  Argumenty
                 występujące po -- traktowane są jako nazwy plików i argumenty. Argument  -  jest
                 równoważnikiem --.

       Bash  interpretuje  także wiele opcji wieloznakowych.  Jeśli mają zostać rozpoznane, opcje
       te muszą pojawić się w wierszu poleceń przed opcjami jednoznakowymi,

       --debugger
              Ustawia  profil  debuggera  do  wykonania,  przed  uruchomieniem  powłoki.   Włącza
              rozszerzony  tryb  debugowania  (patrz opis opcji extdebug do wbudowanego polecenia
              shopt poniżej).
       --dump-po-strings
              Równoważne -D, ale wyjście jest w formacie pliku GNU gettext po (portable object).
       --dump-strings
              Równoważnik -D.
       --help Wyświetla na standardowym wyjściu komunikat o użytkowaniu i pomyślnie kończy pracę.
       --init-file plik
       --rcfile plik
              Wykonuje polecenia z podanego pliku  zamiast  ze  standardowego  systemowego  pliku
              inicjującego  /etc/bash.bashrc  i  osobistego  pliku  inicjującego ~/.bashrc, jeśli
              powłoka jest interaktywna.  Zobacz WYWOŁANIE poniżej.

       --login
              Równoważne -l.

       --noediting
              Nie  używa  biblioteki  GNU  readline  do  odczytu   wierszy   poleceń   w   trybie
              interaktywnym.

       --noprofile
              Nie  odczytuje  ani  ogólnosystemowego  pliku startowego /etc/profile ani żadnego z
              osobistych  plików  inicjujących  ~/.bash_profile,  ~/.bash_login  czy  ~/.profile.
              Domyślnie,  bash czyta te pliki gdy jest wywołany jako powłoka zgłoszeniowa (zobacz
              WYWOŁANIE poniżej).

       --norc Nie odczytuje i nie wykonuje systemowego pliku inicjującego  /etc/bash.bashrc  oraz
              osobistego  pliku  inicjującego ~/.bashrc jeśli powłoka jest interaktywna. Opcja ta
              jest domyślnie włączona, jeżeli powłokę wywołano jako sh.

       --posix
              Zmienia zachowanie bash tam, gdzie domyślne działanie różni się od standardu POSIX,
              tak  by  spełniać  standard  (tryb  posix). Więcej informacji o tym, jak tryb posix
              wpływa na zachowanie powłoki można znaleźć w dokumencie do  którego  odsyła  ZOBACZ
              TAKŻE.

       --restricted
              Powłoka staje się okrojona (zobacz POWŁOKA OKROJONA poniżej).

       --verbose
              Równoważnik opcji -v.

       --version
              Pokazuje  na  standardowym  wyjściu  informację  o  wersji  tego egzemplarza bash i
              pomyślnie kończy pracę.

ARGUMENTY

       Jeśli po przetworzeniu opcji pozostają jakieś argumenty, a nie podano ani opcji -c ani -s,
       to  zakłada  się,  że  pierwszy argument jest nazwą pliku zawierającego polecenia powłoki.
       Jeżeli bash został wywołany  w  taki  sposób,  to  $0  przypisywana  jest  nazwa  pliku  z
       poleceniami,  a  parametrom  pozycyjnym  pozostałe  argumenty.  Bash  odczytuje i wykonuje
       polecenia z tego pliku, a następnie kończy pracę. Kod zakończenia basha jest wówczas kodem
       zakończenia ostatniego wykonanego polecenia skryptu. Jeśli nie wykonano żadnego polecenia,
       to kod zakończenia wynosi 0. Najpierw wykonywana jest próba otworzenia  pliku  w  bieżącym
       katalogu,  a  następnie,  jeśli się ona nie powiedzie, powłoka przeszukuje katalogi w PATH
       szukając skryptu.

WYWOŁANIE

       Powłoka zgłoszeniowa (login shell) to taka, w której pierwszym znakiem zerowego  argumentu
       jest -, lub taka, którą uruchomiono z opcją --login.

       Powłoka interaktywna to taka, którą uruchomiono bez argumentów innych niż opcje (chyba, że
       podano -s) i bez opcji -c; zarówno jej standardowe wejście jak i wyjście powiązane jest  z
       terminalami (tak jak określiła to funkcja isatty(3)), albo taka, którą uruchomiono z opcją
       -i.  Jeśli bash jest interaktywny, to ustawiane jest PS1 zaś  $-  zawiera  i;  pozwala  to
       skryptowi powłoki lub plikowi startowemu na sprawdzanie tego stanu.

       Poniższe  akapity  opisują,  jak  bash wykonuje swoje pliki startowe.  Jeśli któryś z tych
       plików istnieje, ale nie może być odczytany, to bash zgłasza błąd.  Tyldy  (~)  w  nazwach
       plików interpretowane są według reguł opisanych poniżej w części Interpretacja tyld sekcji
       INTERPRETACJA.

       Gdy bash wywoływany jest jako powłoka zgłoszeniowa lub  jako  powłoka  nie-interaktywna  z
       opcją  --login,  w  pierwszej  kolejności czyta i wykonuje polecenia z pliku /etc/profile,
       jeśli takowy istnieje.  Po odczytaniu tego pliku, szuka ~/.bash_profile,  ~/.bash_login  i
       ~/.profile,  w  tej  kolejności,  po  czym  odczytuje  i  wykonuje  polecenia z pierwszego
       istniejącego i dającego się  odczytać.   Można  posłużyć  się  opcją  --noprofile  podczas
       uruchamiania powłoki, by zakazać takiego zachowania.

       Podczas  kończenia  interaktywnej  powłoki  zgłoszeniowej  lub gdy nieinteraktywna powłoka
       zgłoszeniowa wykonuje wbudowane polecenie exit, bash czyta i wykonuje  polecenia  z  pliku
       ~/.bash_logout, jeśli taki istnieje.

       Jeżeli uruchamiana jest powłoka interaktywna nie będąca powłoką zgłoszeniową, bash czyta i
       wykonuje polecenia z /etc/bash.bashrc i ~/.bashrc, jeśli takie pliki  istnieją.   Może  to
       być  zakazane  za  pomocą  opcji  --norc.   Opcja  --rcfile plik wymusi odczyt i wykonanie
       poleceń z pliku zamiast z /etc/bash.bashrc i ~/.bashrc.

       Jeśli bash startuje w trybie nie-interaktywnym, na przykład w  celu  uruchomienia  skryptu
       powłoki,  to  szuka  w  środowisku  zmiennej  BASH_ENV, interpretuje jej wartość, jeśli ją
       znalazł, i używa otrzymanej wartości jako nazwy pliku do  odczytania  i  wykonania.   Bash
       zachowuje się tak, jakby były wykonane następujące polecenia:
              if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi
       ale do szukania nazwy pliku nie jest używana wartość zmiennej PATH.

       Jeżeli  bash  wywołano  pod  nazwą  sh,  to  próbuje  on  naśladować  zachowanie  startowe
       historycznych wersji sh tak ściśle jak  to  jest  możliwe,  przy  równoczesnym  spełnianiu
       standardu  POSIX.  Wywołany jako powłoka interaktywna lub powłoka nie-interaktywna z opcją
       --login, usiłuje na początku odczytać i wykonać polecenia z /etc/profile i  ~/.profile,  w
       tej  kolejności.  W celu zakazania tego zachowania można użyć opcji --noprofile.  Wywołany
       jako powłoka interaktywna pod nazwą sh, bash  poszukuje  zmiennej  ENV,  interpretuje  jej
       wartość,  jeśli  jest  zdefiniowana, i posługuje się otrzymaną wartością jako nazwą pliku,
       który ma być odczytany i wykonany.  Ponieważ powłoka wywołana jako sh nie  usiłuje  czytać
       ani  wykonywać  poleceń  z  jakichkolwiek  innych plików startowych, opcja --rcfile nie ma
       żadnych skutków.  Powłoka nie-interaktywna  wywołana  pod  nazwą  sh  nie  próbuje  czytać
       żadnych plików startowych.  Wywołany jako sh, bash wchodzi w tryb posix po odczycie plików
       startowych.

       Gdy bash uruchomiony jest w trybie posix, jak z opcją --posix wiersza poleceń, kieruje się
       standardem  POSIX  dla plików startowych.  W trybie tym, powłoka interaktywna interpretuje
       zmienną ENV  a  polecenia  odczytywane  i  wykonywane  są  z  pliku,  którego  nazwą  jest
       zinterpretowana wartość.  Nie są czytane inne pliki startowe.

       Bash  usiłuje  rozstrzygnąć,  czy  jest  uruchomiony ze standardowym wejściem podpiętym do
       połączenia sieciowego, przez demona powłoki zdalnej, zwykle rshd  lub  przez  bezpiecznego
       demona  powłoki sshd.  Jeżeli stwierdzi, że został uruchomiony w ten  sposób, to odczytuje
       i wykonuje polecenia z ~/.bashrc, jeśli plik ten istnieje i daje się  czytać.  Nie  będzie
       tego  robił wywołany jako sh.  Można posłużyć się opcją --norc, by zakazać tego zachowania
       oraz opcją --rcfile, by wymusić czytanie innego pliku, ale ani rshd,  ani  sshd  zazwyczaj
       nie wywołuje powłoki z tymi opcjami ani nie pozwala na ich podanie.

       Jeśli  powłoka  została  uruchomiona  z  efektywnym  id  użytkownika  (grupy) różnym od id
       rzeczywistego, a nie podano opcji -p, to nie są odczytywane żadne pliki startowe,  funkcje
       powłoki  nie  są  dziedziczone  ze  środowiska,  zmienne  SHELLOPTSP,  BASHOPTS, CDPATH, i
       GLOBIGNORE,  jeśli  jest  takie  występują  w  środowisku,  są  ignorowane   a   efektywny
       identyfikator  użytkownika  jest  ustawiany na jego identyfikator rzeczywisty.  Jeśli przy
       wywołaniu podano opcję -p, to zachowanie startowe jest takie samo, ale nie jest resetowany
       efektywny id użytkownika.

DEFINICJE

       W pozostałej części tego dokumentu używane są poniższe definicje.
       odstęp Spacja lub znak tabulacji.
       słowo  Sekwencja  znaków  uważana  przez  powłokę  za pojedynczą jednostkę. Znana też jako
              token.
       nazwa  Jest to  słowo  składające  się  wyłącznie  ze  znaków  alfanumerycznych  i  znaków
              podkreślenia,   i  rozpoczynające  się  znakiem  alfabetycznym  lub  podkreśleniem.
              Wspominane również jako identyfikator.
       metaznak
              Znak, który, gdy nie jest cytowany, oddziela słowa. Jeden z poniższych:
              |  & ; ( ) < > space tab newline
       operator sterujący
              token pełniący funkcję sterującą. Jest to jeden z poniższych symboli:
              || & && ; ;; ;& ;;& ( ) | |& <newline>

SŁOWA ZASTRZEŻONE

       Słowa zastrzeżone (reserved words) to takie, które mają dla powłoki  specjalne  znaczenie.
       Następujące  słowa  są rozpoznawane jako zastrzeżone, gdy nie są cytowane i występują albo
       jako pierwsze słowo polecenia prostego (zobacz GRAMATYKA  POWŁOKI  poniżej)  albo  trzecie
       słowo poleceń case lub for;

       !  case   coproc  do done elif else esac fi for function if in select then until while { }
       time [[ ]]

GRAMATYKA POWŁOKI

   Polecenia proste
       Polecenie proste jest sekwencją opcjonalnych  przypisań  zmiennych,  po  której  następują
       rozdzielane  przez  odstęp  słowa  i  przekierowania,  a zakończoną operatorem sterującym.
       Pierwsze słowo określa polecenie, jakie  ma  zostać  wykonane  i  jest  przekazywane  jako
       argument  numer  zero.   Pozostałe  słowa  są  przekazywane  jako  argumenty  wywoływanego
       polecenia.

       Wartością zwracaną polecenia prostego jest jego kod zakończenia lub 128+n jeżeli polecenie
       przerwane jest sygnałem n.

   Potoki
       Potok  jest  sekwencją  jednego  lub  więcej  poleceń  rozdzielonych  jednym  z operatorów
       kontrolnych | lub |&. Formatem potoku jest:

              [time [-p]] [ ! ] polecenie [ [||&] polecenie2 ... ]

       Standardowe wyjście z polecenia połączone jest za  pośrednictwem  potoku  ze  standardowym
       wejściem  polecenia2.   Połączenie  to  wykonywane  jest  przed możliwymi przekierowaniami
       podanymi dla polecenia (zobacz poniżej PRZEKIEROWANIE. Jeśli użyte jest |&, to standardowe
       wyjście błędów polecenia razem z jego standardowym wyjściem jest połączone ze standardowym
       wejściem polecenia2 za pomocą potoku; jest to  skrócona  forma  2>&1  |.  To  bezpośrednie
       przekierowanie   standardowego   wyjścia   błędów   jest   przeprowadzane   po  wszystkich
       przekierowaniach określonych przez polecenie.

       Zwracanym kodem zakończenia potoku jest kod zakończenia  ostatniego  polecenia,  chyba  że
       włączono  opcję  pipefail.  W  takim  przypadku  kod  zakończenia  potoku  jest  wartością
       ostatniego (po prawej) polecenia, które zakończyło się kodem niezerowym  lub  zero,  jeśli
       wszystkie  polecenia  zakończyły się powodzeniem. Jeżeli potok poprzedza zastrzeżone słowo
       !, to kod zakończenia takiego  potoku  jest  negacją  (NOT)  kodu  zakończenia  ostatniego
       polecenia,  zgodnie  z  powyższym  opisem.  Powłoka  oczekuje  na  zakończenie (terminate)
       wszystkich poleceń w potoku przed zwróceniem wartości.

       Jeżeli potok jest poprzedzony słowem zastrzeżonym time, to po  jego  zakończeniu  podawany
       jest  czas  wykonywania,  jak również czas użytkownika i czas systemu zużyty na wykonanie.
       Opcja -p zmienia format  tworzonych  wyników  na  określony  przez  POSIX.  Jeśli  powłoka
       znajduje  się  w  trybie  posix,  to  nie  rozpoznaje time jako słowa zastrzeżonego, jeśli
       kolejny token rozpoczyna się znakiem "-". Do  sformatowania  łańcucha  określającego,  jak
       powinna  być  wyświetlana  informacja  o czasach, można ustawić zmienną TIMEFORMAT; zobacz
       opis TIMEFORMAT w Zmienne powłoki poniżej.

       Jeśli powłoka znajduje się w trybie posix, to po time może wystąpić znak nowego wiersza. W
       takim  przypadku,  powłoka  wyświetla  całkowity  czas użytkownika i systemu, skonsumowany
       przez powłokę i jej potomków.  Zmienną  TIMEFORMAT  można  określić  format  informacji  o
       czasie.

       Każde polecenie w potoku uruchamiane jest jako odrębny proces (tj. w podpowłoce).

   Listy
       Lista jest potokiem lub sekwencją kilku potoków rozdzielonych jednym z operatorów ;, &, &&
       lub ⎪⎪, i opcjonalnie zakończoną jednym ze znaków ;, & lub <nowy-wiersz>.

       Spośród tych operatorów listowych, && i ⎪⎪ mają ten sam priorytet, następujące po nich ; i
       &, również mają równy między sobą priorytet.

       W  zastępstwie  średnika,  w  liście  może pojawić się sekwencja jednego lub więcej znaków
       nowego wiersza.

       Jeśli polecenie zakończone jest operatorem sterującym &, to  powłoka  wykonuje  je  w  tle
       (background)  w  podpowłoce.  Powłoka macierzysta nie oczekuje na zakończenie polecenia, a
       zwracany kod wynosi 0. Polecenia oddzielane znakiem średnika ; wykonywane są sekwencyjnie;
       powłoka oczekuje na zakończenie pracy przez każde z nich po kolei. Zwracany kod jest kodem
       zakończenia ostatniego wykonanego polecenia.

       Listy AND i  OR  są  sekwencjami  jednego  lub  więcej  potoków  oddzielonych  odpowiednio
       operatorami  sterującymi  && i ||. Listy AND i OR są wykonywane z pozostawioną łącznością.
       Lista AND ma postać

              polecenie1 && polecenie2

       polecenie2 wykonywane jest  wtedy,  i  tylko  wtedy,  gdy  polecenie1  zwraca  zerowy  kod
       zakończenia.

       Lista OR ma postać

              polecenie1 ⎪⎪ polecenie2

       polecenie2  jest  wykonywane  wtedy,  i  tylko  wtedy, gdy polecenie1 zwraca niezerowy kod
       zakończenia. Kod  zwracany  przez  listy  AND  i  OR  jest  kodem  zakończenia  ostatniego
       wykonanego polecenia listy.

   Polecenia złożone
       Polecenie  złożone  jest  jednym  z  poniższych.  W  większości  przypadków lista w opisie
       polecenia może być oddzielona od reszty polecenie jedną lub więcej znakami nowego wiersza,
       a po niej zamiast średnika może wystąpić znak nowego wiersza.

       (lista)
              Lista  wykonywana jest w podpowłoce (patrz ŚRODOWISKO WYKONYWANIA POLECEŃ poniżej).
              Przypisania zmiennych i polecenia wbudowane wpływające na  środowisko  powłoki  nie
              zachowują  swoich  skutków  po  zakończeniu  polecenia.  Zwracanym  kodem  jest kod
              zakończenia listy.

       { lista; }
              Lista jest po prostu wykonywana w bieżącym  środowisku  powłoki.   Lista  musi  być
              zakończona   znakiem   nowej  linii  lub  średnika.  Nazywane  jest  to  poleceniem
              grupowania. Zwracanym kodem jest kod zakończenia  listy.   Należy  pamiętać,  że  w
              przeciwieństwie  do  metaznaków ( i ), { i }słowami zastrzeżonymi i aby zostały
              rozpoznane muszą się pojawić tam, gdzie dozwolone jest użycie  słów  zastrzeżonych.
              Ponieważ  nie  powodują  podziału na słowa, muszą być oddzielone od listy za pomocą
              białego znaku lub innego metaznaku powłoki.

       ((wyrażenie))
              Wyrażenie interpretowane  jest  zgodnie  z  zasadami  opisanymi  poniżej  w  sekcji
              OBLICZANIE  WYRAŻEŃ  ARYTMETYCZNYCH.   Jeśli  wartość  wyrażenia jest niezerowa, to
              kodem zwracanym jest 0; w przeciwnym razie kodem zwracanym jest 1. Jest  to  ściśle
              równoważne konstrukcji let "wyrażenie".

       [[ wyrażenie ]]
              Zwraca  kod  0 lub 1 w zależności od interpretacji wyrażenia warunkowego wyrażenie.
              Wyrażenia złożone są ze składowych (primaries)  opisanych poniżej w opcji WYRAŻENIA
              WARUNKOWE.   Na  słowach pomiędzy [[ a ]] nie są wykonywane rozwinięcia nazw plików
              ani podział na słowa; są natomiast wykonywane:  interpretacja  tyld,  parametrów  i
              zmiennych,  interpretacja  wyrażeń  arytmetycznych,  podstawianie  wyników poleceń,
              podstawianie wyników procesów i usunięcia cytowań. Operatory warunkowe,  takie  jak
              -f, nie mogą być cytowane, jeśli mają zostać rozpoznane jako składowe.

              Operatory   <   i   >,   gdy   są  używane  z  [[,  sortują  zgodnie  z  porządkiem
              leksykograficznym, używając bieżącego ustawienia locale.

       Proszę zapoznać się z wbudowanym poleceniem test  (rozdział  WBUDOWANE  POLECENIA  POWŁOKI
       poniżej),  aby  dowiedzieć  się  jak  obsługiwane  są  parametry (np. sytuacja gdy ich nie
       podano).

       Jeśli używane są operatory == i !=, to łańcuch po prawej stronie operatora jest wzorcem  i
       jest  dopasowany  zgodnie  z opisanymi poniżej regułami Dopasowania wzorca, jakby włączono
       opcję powłoki extglob. Operator  =  jest  równoważny  ==.  Jeśli  włączono  opcję  powłoki
       nocasematch, to przy dopasowaniu ignorowana jest wielkość liter. Zwracaną wartością jest 0
       gdy łańcuch pasuje (==) lub nie pasuje (!=) i 1 w przeciwnym wypadku. Każda  część  wzorca
       może być cytowana, aby wymusić jej dopasowanie jako łańcuch.

       Dostępny jest dodatkowy operator dwuargumentowy =~, który ma ten sam priorytet co == i !=.
       Gdy zostanie użyty, łańcuch po  prawej  stronie  operatora  jest  rozszerzonym  wyrażeniem
       regularnym i jest odpowiednio dopasowywany (jak przez regex(3)). Zwracaną wartością jest 0
       gdy łańcuch pasuje do wzorca i 1  w  przeciwnym  wypadku.  Jeśli  wyrażenie  regularne  ma
       nieprawidłową składnię, zwracane jest 2. Jeśli włączono opcję powłoki nocasematch, to przy
       dopasowaniu ignorowana jest wielkość liter. Każda część  wzorca  może  być  cytowana,  aby
       wymusić   jej   dopasowanie   jako   łańcuch.   Wyrażenia   w   nawiasach  będące  częścią
       wyrażeń regularnych muszą być  traktowane  z  dużą  ostrożnością,  ponieważ  zwykłe  znaki
       cytowania  trasą swe  znaczenie  między  nawiasami.  Jeśli  wzorzec  jest  przechowywany w
       zmiennej  powłoki,  zacytowanie  go  wymusza  dopasowanie  całego  wzorca  jako  łańcucha.
       Podłańcuch  dopasowany  przez podwyrażenie ujęte w nawiasy wewnątrz wyrażenia regularnego,
       jest zapisywany w zmiennej tablicowej BASH_REMATCH. Element BASH_REMATCH z indeksem 0 jest
       częścią łańcucha pasującą do całego wyrażenia regularnego. Element tej zmiennej z indeksem
       n jest częścią łańcucha pasującą do n-tego podwyrażenia ujętego w nawiasy.

       Wyrażenia można łączyć przy pomocy następujących  operatorów,  wymienionych  w  kolejności
       malejącego priorytetu:

              ( wyrażenie )
                     Zwraca  wartość  wyrażenia.  Może służyć do unieważnienia zwykłej kolejności
                     operatorów.
              ! wyrażenie
                     Prawda jeżeli wyrażenie jest fałszywe.
              wyrażenie1 && wyrażenie2
                     Prawda jeśli zarówno wyrażenie1 jak i wyrażenie2 są prawdziwe.
              wyrażenie1 || wyrażenie2
                     Prawda jeśli choć jedno spośród wyrażenie1 lub wyrażenie2 jest prawdziwe.

              Operatory && i || nie wykonują wyrażenia2 jeżeli wartość  wyrażenia1  wystarcza  do
              określenia wartości, jaka zostanie zwrócona przez całe wyrażenie warunkowe.

       for nazwa [ [ in [ słowo ... ] ] ; ] do lista ; done
              Interpretowane są słowa następujące po in, tworząc listę elementów.  Zmiennej nazwa
              nadawana jest kolejno wartość każdego elementu tej listy i  każdorazowo  wykonywana
              jest  lista poleceń.  Jeżeli pominięto in słowo, to polecenie for wykonuje listę po
              jednym razie  dla  każdego  ustawionego  parametru  pozycyjnego  (zobacz  PARAMETRY
              poniżej).   Zwracanym  kodem  jest kod zakończenia ostatniego wykonanego polecenia.
              Jeśli interpretacja elementów następujących po in daje w wyniku pustą listę, to nie
              są wykonywane żadne polecenia i zwracany jest kod 0.

       for (( wyr1 ; wyr2 ; wyr3 )) ; do lista ; done
              Na  początku  obliczane  jest  wyrażenie  arytmetyczne  wyr1,  zgodnie  z  zasadami
              opisanymi poniżej w  OBLICZANIE  WYRAŻEŃ  ARYTMETYCZNYCH.   Następnie  wielokrotnie
              obliczane  jest  wyr2,  aż do osiągnięcia przez nie wartości zero.  Każdorazowo gdy
              obliczone wyr2 jest niezerowe, wykonywana jest lista  i  obliczane  jest  wyrażenie
              arytmetyczne  wyr3.   Jeśli  pominięto  któreś z wyrażeń, to zachowuje się ono tak,
              jakby przyjmowało wartość 1.   Zwracanym  kodem  jest  kod  zakończenia  ostatniego
              wykonanego polecenia listy, lub fałsz jeśli któreś z wyrażeń jest niepoprawne.

       select nazwa [ in słowo ] ; do lista ; done
              Interpretowana jest lista słów następujących po in, tworząc listę elementów. Zestaw
              zinterpretowanych słów wypisywany jest na standardowym wyjściu,  każde  poprzedzone
              liczbą  kolejną.  Jeśli  pominięto  in  słowo, to wypisywane są parametry pozycyjne
              (zobacz PARAMETRY poniżej).  Następnie wyświetlany jest znak zachęty PS3 i  czytany
              jest   wiersz   ze  standardowego  wejścia.  Jeżeli  wiersz  składa  się  z  liczby
              odpowiadającej jednemu z wyświetlonych słów, to zmiennej  nazwa  przypisywana  jest
              wartość  tego  słowa.   Jeśli  wiersz  jest  pusty,  słowa i zachęta wyświetlane są
              ponownie. Jeżeli odczytano EOF, to  polecenie  kończy  pracę.  Każda  inna  wartość
              powoduje, że nazwie zostanie przypisany łańcuch pusty. Odczytany wiersz zachowywany
              jest w zmiennej REPLY.   lista  wykonywana  jest  po  każdym  wyborze,  dopóki  nie
              zostanie  wykonane  polecenie break.  Kodem zakończenia select jest kod zakończenia
              ostatniego wykonanego polecenia listy lub zero jeśli nie wykonano żadnych poleceń.

       case słowo in [ [(] wzorzec [ | wzorzec ] ... ) lista ;; ] ... esac
              Polecenie case najpierw interpretuje  słowo  i  próbuje  dopasować  uzyskany  wynik
              każdego  z  wzorców po kolei, posługując się tymi samymi regułami dopasowywania, co
              dla rozwijania nazw ścieżkowych (zobacz Rozwijanie nazw ścieżkowych poniżej). Słowo
              jest  interpretowane  zgodnie  z  interpretacją  tyldy,  podstawianiem parametrów i
              zmiennych, interpretacji wyrażeń arytmetycznych, wyników poleceń i wyników procesów
              oraz  usunięciem  cytowań.  Każdy  sprawdzany  wzorzec podlega interpretacji tyldy,
              podstawianiu parametrów i zmiennych, interpretacji wyrażeń arytmetycznych,  wyników
              poleceń   i   wyników  procesów.  Jeśli  włączono  opcję  powłoki  nocasematch,  to
              dopasowanie jest przeprowadzane bez uwzględniania wielkości liter.  Gdy  znalezione
              zostanie dopasowanie, wykonywana jest odpowiadająca mu lista. Jeśli użyto operatora
              ;;, nie przeprowadza się próby  kolejnego  dopasowania  po  znalezieniu  pierwszego
              pasującego  wzorca.  Użycie  ;&  w  miejsce ;; powoduje kontynuowanie wykonywania z
              powiązaną listą, z następnym zestawem wzorców. Jeśli użyje się  w  zamian  ;;&,  to
              powłoka  sprawdza  następną  listę  wzorców twierdzenia (jeśli istnieje) i wykonuje
              każdą powiązaną listę w przypadku pomyślnego dopasowania. Jeżeli żaden  ze  wzorców
              nie pasuje, to kodem zakończenia jest zero. W przeciwnym razie jest on równy kodowi
              zakończenia ostatniego z wykonanych poleceń listy.

       if lista; then lista; [ elif lista; then lista; ] ... [ else lista; ] fi
              Wykonywana jest lista występująca po if.  Jeżeli jej kod zakończenia  jest  zerowy,
              to wykonywana jest lista klauzuli then. W przeciwnym wypadku, wykonywana jest lista
              każdego elif po kolei; jeśli kod zakończenia którejś wynosi 0, to  wykonywana  jest
              lista  then  i  polecenie  jest  kończone.  Jeżeli  nie wystąpił żaden z powyższych
              przypadków, to wykonywana jest lista występująca po  klauzuli  else,  jeśli  takowa
              istnieje. Kodem zakończenia jest kod ostatniego wykonanego polecenia listy lub zero
              jeśli żaden z warunków nie okazał się prawdziwy.

       while lista-1; do lista-2; done
       until lista-1; do lista-2; done
              Polecenie while wykonuje listę lista-2 w  sposób  ciągły  dopóty,  dopóki  ostatnie
              polecenie  listy  lista-1 nie zwróci kodu zakończenia równego zero. Polecenie until
              działa podobnie do polecenia  while,  a  jedyną  różnicą  jest  to,  że  test  jest
              zanegowany:  lista-2  jest  wykonywana tak długo, aż ostatnie polecenie listy-1 nie
              zwróci kodu zakończenia różnego od zera. Kod wyjścia poleceń  while  i  until  jest
              kodem  zakończenia ostatniego polecenia wykonanego z listy-2 lub zerem, jeśli żadne
              z nich nie zostało wykonane.

   Koprocesy (współprocesy)
       Koproces  jest  poleceniem  powłoki  poprzedzonym  słowem  zastrzeżonym  coproc.  Jest  on
       wykonywany  w  podpowłoce  w  sposób  asynchroniczny,  jeśli  polecenie zostało zakończone
       operatorem kontrolnym &, z ustawionym dwustronnym potokiem pomiędzy wykonującą go  powłoką
       a koprocesem.

       Format koprocesu jest następujący:

              coproc [NAZWA] polecenie [przekierowania]

       W  ten  sposób  tworzy jest koproces o nazwie NAZWA. Jeśli nie podano NAZWY, domyślną jest
       COPROC. NAZWA nie może zostać podana,  jeśli  polecenie  jest  poleceniem  prostym  (patrz
       powyżej), w przeciwnym wypadku jest interpretowane jako pierwsze słowo polecenia prostego.
       Gdy koproces jest wykonywany, powłoka tworzy zmienną tablicową (patrz Tablice  poniżej)  o
       nazwie  NAZWA  w  kontekście  wykonywanej  powłoki.  Standardowe  wyjście  polecenia  jest
       połączone potokiem z deskryptorem pliku wykonywanej powłoki,  a  ten  jest  przypisany  do
       NAZWA[0].  Standardowe  wejście  polecenia  jest  połączone  potokiem z deskryptorem pliku
       wykonywanej powłoki, a ten jest przypisany do NAZWA[1]. Ten  potok  jest  ustawiany  przed
       wszystkimi   przekierowaniami   podanymi  z  poleceniem  (patrz  PRZEKIEROWANIE  poniżej).
       Deskryptory pliku mogą zostać użyte jako argumenty  do  poleceń  powłoki  i  przekierowań,
       korzystając  ze  standardowych  interpretacji  słów.  Deskryptory plików nie są dostępne w
       podpowłokach.  Identyfikator  procesu  powłoki  utworzonej  do  wykonania  koprocesu  jest
       dostępny  jako wartość zmiennej NAZWA_PID. Do czekania na zakończenie koprocesu można użyć
       wbudowanego polecenia wait.

       Ponieważ koproces jest tworzony jako polecenie  asynchroniczne,  polecenie  coproc  zawsze
       zwróci powodzenie. Zwracanym statusem koprocesu jest kod zakończenia polecenia.

   Definiowanie funkcji powłoki
       Funkcja  powłoki  jest  obiektem  wywoływanym podobnie jako polecenie proste i wykonującym
       polecenie złożone z nowym zestawem parametrów pozycyjnych. Funkcje powłoki deklaruje się w
       następujący sposób:

       nazwa () polecenie-złożone [przekierowanie]
       function nazwa [()] polecenie-złożone [przekierowanie]
              W  ten  sposób  definiowana jest funkcja o nazwie nazwa. Słowo zastrzeżone function
              jest opcjonalne. Jeśli je podano, to nawiasy są  opcjonalne.  Ciałem  funkcji  jest
              polecenie  złożone  polecenie-złożone  (patrz Polecenia złożone powyżej). Polecenie
              jest zwykle listą poleceń objętych nawiasami klamrowymi { i  },  ale  może  to  być
              dowolne  z  poleceń  wypisanych  powyżej  w  rozdziale  Polecenia złożone, z jednym
              wyjątkiem: jeśli użyje się słowa kluczowego function bez nawiasów, nawiasy klamrowe
              są obowiązkowe.  Polecenie-złożone  jest wykonywane ilekroć podano nazwę jako nazwę
              polecenia prostego. W trybie_posix nazwa nie może  być  taka  sama,  jak  jedno  ze
              specjalnych  słów wbudowanych POSIX. Wszystkie przekierowania (patrz PRZEKIEROWANIE
              poniżej) podane  podczas  definiowania  funkcji  są  wykonywane  gdy  funkcja  jest
              wykonywana.  Kod  zakończenia definicji funkcji wynosi zero, chyba że wystąpił błąd
              składni, lub istnieje już funkcja tylko do odczytu  o  tej  samej  nazwie.  Podczas
              wykonywania,  kodem  wyjścia  funkcji  jest  kod  zakończenia  ostatniego polecenia
              wykonanego w jej ciele. Patrz również FUNKCJE poniżej.

KOMENTARZE

       W  powłoce  nie-interaktywnej  lub  w  powłoce  interaktywnej,  w  której  włączono  opcję
       interactive_comments  do  opcji  wbudowanych  shopt  (zobacz  WBUDOWANE  POLECENIA POWŁOKI
       poniżej) słowo rozpoczynające się od znaku # powoduje, że słowo to i  wszystkie  pozostałe
       znaki   w   tym   wierszu  będą  ignorowane.  Powłoka  interaktywna  bez  włączonej  opcji
       interactive_comments nie pozwala na komentarze. Opcja interactive_comments jest  domyślnie
       włączona w powłokach interaktywnych.

CYTOWANIE

       Cytowanie  służy  do  usuwania  specjalnego znaczenia dla powłoki pewnych znaków lub słów.
       Cytowanie  można  stosować  do  wyłączania  specjalnego  traktowania  znaków  specjalnych,
       zapobiegania   rozpoznawaniu   słów   zastrzeżonych   jako  takich  oraz  do  zapobiegania
       podstawianiu parametrów.

       Każdy z metaznaków podanych powyżej w DEFINICJACH posiada dla powłoki specjalne  znaczenie
       i musi być cytowany, jeśli ma oznaczać samego siebie.

       Gdy używane są funkcje interpretacji historii poleceń (patrz INTERPRETACJA HISTORII), znak
       interpretacji historii, zwykle !, musi być cytowany, jeśli chce się uniknąć  interpretacji
       historii.

       Istnieją   trzy   mechanizmy  cytowania:  znak  specjalny  (escape  character),  apostrofy
       (pojedyncze cudzysłowy) i cudzysłowy zwykłe (podwójne).

       Niecytowany odwrotny ukośnik (\) jest znakiem specjalnym.  Chroni on  przed  interpretacją
       dosłowną  wartość  następującego  po nim znaku, z wyjątkiem <nowejlinii>. Jeśli pojawi się
       para \<nowalinia> a sam odwrotny ukośnik nie jest cytowany, to  traktowana  jest  ona  jak
       kontynuacja  wiersza  (to  znaczy,  usuwana  jest  ze  strumienia  wejściowego i w efekcie
       ignorowana).

       Ujęcie znaków w apostrofy chroni dosłowne wartości  każdego  z  nich.  Apostrof  nie  może
       pojawić   się   pomiędzy  innymi  apostrofami,  nawet  jeśli  jest  poprzedzony  odwrotnym
       ukośnikiem.

       Ujęcie znaków w cudzysłowy chroni dosłowne wartości każdego z nich, za wyjątkiem $, ` i  \
       oraz,  gdy  włączone  jest dopełnianie z historii, !. Gdy powłoka działa w trybie posix, !
       nie ma specjalnego znaczenia wewnątrz podwójnych  cudzysłowów,  nawet  gdy  włączone  jest
       dopełnianie   z  historii.  Znaki  $  i  `  zachowują  swe  specjalne  znaczenie  wewnątrz
       cudzysłowów. Odwrotny ukośnik zachowuje specjalne znaczenie tylko, gdy  występuje  po  nim
       jeden  z  poniższych  znaków:  $,  `,  ", \ lub <nowy wiersz>. Cudzysłów może być cytowany
       wewnątrz cudzysłowów przez poprzedzenie  go  odwrotnym  ukośnikiem.  Jeśli  dopełnianie  z
       historii  jest  włączone,  to będzie wykonane, chyba że znak ! jest ujęty w cudzysłowy lub
       cytowany odwrotnym ukośnikiem. Odwrotny ukośnik poprzedzający ! nie jest usuwany.

       Parametry specjalne * i @  posiadają  specjalne  znaczenie  wewnątrz  cudzysłowów  (zobacz
       PARAMETRY poniżej).

       Słowa  postaci  $'łańcuch'  traktowane  są  specjalnie.  Słowo  takie  interpretowane jako
       łańcuch, w którym znaki poprzedzone odwrotnym ukośnikiem zastępowane są  według  standardu
       ANSI  C.  Sekwencje  specjalne  z  odwrotnym  ukośnikiem,  jeśli  występują, dekodowane są
       następująco:
              \a     alarm (dzwonek)
              \b     backspace
              \e
              \E     znak escape
              \f     znak wysuwu strony (form feed)
              \n     znak nowego wiersza (new line)
              \r     powrót karetki (carriage return)
              \t     tabulacja pozioma (horizontal tab)
              \v     tabulacja pionowa (vertical tab)
              \\     odwrotny ukośnik (backslash)
              \'     apostrof
              \"     cudzysłów
              \?     znak zapytania
              \nnn   ośmiobitowy znak, którego wartością  jest  ósemkowa  liczba  nnn  (jedna  do
                     trzech cyfr)
              \xHH   ośmiobitowy  znak, którego wartością jest szesnastkowa liczba nnn (jedna lub
                     dwie cyfry szesnastkowe)
              \uHHHH znak Unicode  (ISO/IEC  10646)  o  wartości  szesnastkowej  HHHH  (jedna  do
                     czterech cyfr szesnastkowych)
              \UHHHHHHHH
                     znak  Unicode  (ISO/IEC  10646)  o wartości szesnastkowej HHHHHHHH (jedna do
                     ośmiu cyfr szesnastkowych)
              \cx    znak kontrolny x

       Przetłumaczony wynik jest pojedynczo cytowany, tak jakby nie było znaku dolara.

       Ujęty w cudzysłowy łańcuch poprzedzony znakiem dolara ($"łańcuch") spowoduje,  że  łańcuch
       zostanie  zinterpretowany  zgodnie  z  bieżącymi ustawieniami regionalnymi (locale). Jeśli
       ustawione są one na C lub POSIX, to znak  dolara  jest  ignorowany.  Jeżeli  łańcuch  jest
       tłumaczony i zamieniany, to zastąpienie jest podwójnie cytowane.

PARAMETRY

       Parametr  jest  elementem przechowującym wartości. Może on być nazwą, liczbą lub jednym ze
       znaków specjalnych podanych poniżej w  sekcji  Parametry  specjalne.   Dla  celów  powłoki
       zmienna jest parametrem oznaczanym przez nazwę.  Zmienna posiada wartość i zero lub więcej
       atrybutów.  Wartość atrybutom przypisuje  się  za  pomocą  polecenia  wbudowanego  declare
       (zobacz opis tego polecenia poniżej, w sekcji WBUDOWANE POLECENIA POWŁOKI).

       Parametr  jest  ustawiony  jeśli  przypisano  mu  wartość.  Łańcuch  pusty  jest  poprawną
       wartością. Po ustawieniu zmiennej,  może  być  ona  unieważniona  wyłącznie  przez  użycie
       wbudowanego polecenia unset (zobacz poniżej WBUDOWANE POLECENIA POWŁOKI ).

       Do zmiennej można wykonać przypisanie przy pomocy instrukcji postaci

              nazwa=[wartość]

       Jeżeli  nie  podano  wartości,  to  zmiennej  przypisywany  jest  łańcuch pusty. Wszystkie
       wartości przechodzą  przez  interpretację  tyld,  podstawianie  parametrów,  interpretację
       zmiennych,  podstawianie  wyników poleceń, interpretację wyrażeń arytmetycznych i usuwanie
       cytowań (zobacz poniżej  INTERPRETACJA).  Jeżeli  zmienna  ma  ustawiony  atrybut  integer
       (całkowita),  to  wartość  podlega  interpretacjom wyrażeń arytmetycznych, nawet jeśli nie
       użyto interpretacji $((...)). Zobacz poniżej  Interpretacja  wyrażeń  arytmetycznych.  Nie
       jest  wykonywane  dzielenie na słowa, z wyjątkiem "$@", jak wyjaśniono to poniżej w sekcji
       Parametry specjalne.  Nie jest wykonywane rozwijanie nazw plików.  Instrukcje  przypisania
       mogą  się też pojawiać jako argumenty poleceń wbudowanych alias, declare, typeset, export,
       readonly i local (poleceń deklarujących). W trybie posix te słowa wbudowane mogą  wystąpić
       w  poleceniu  po  jednym  lub  większej  liczby  wystąpień polecenia wbudowanego command i
       zachowują właściwości instrukcji przypisania.

       W kontekście, w którym instrukcja przypisania przypisuje wartość do zmiennej  powłoki  lub
       do  tablicy  indeksowanej,  operator  +=  może  posłużyć  do  dołączenia  lub  dodania  do
       poprzedniej wartości zmiennej. Obejmuje to argumenty do  poleceń  wbudowanych  takich  jak
       declare,  które  akceptują  instrukcje  przypisania  (poleceń  deklarujących). Gdy += jest
       stosowane do zmiennej z ustawionym atrybutem liczby całkowitej, to wartość jest  obliczana
       jako  wyrażenie  arytmetyczne i dodawana do bieżącej wartości zmiennej, która również jest
       obliczana. Gdy += jest stosowane do zmiennej  tablicowej  używając  przypisania  złożonego
       (patrz  Tablice  poniżej),  wartość  zmiennej  nie  jest niszczona (jak to ma miejsce przy
       użyciu =), a nowe wartości są dołączane do tablicy poczynając od indeksu większego o jeden
       on  maksymalnego indeksu tablicy (w przypadku tablic indeksowanych) lub jest dodawana jako
       dodatkowa para klucz-wartość (w przypadku tablic asocjacyjnych). Gdy += jest stosowane  do
       zmiennej łańcuch-wartość, to wartość jest interpretowana i dołączana do wartości zmiennej.

       Zmiennej  można  przypisać  atrybut  nazwa  referencyjna (ang. nameref) za pomocą opcji -n
       przekazanej poleceniom wbudowanym declare lub local (zob. opisy declare i local niżej) aby
       utworzyć  nazwę  referencyjną  lub  odniesienie do innej zmiennej. Pozwala to na pośrednie
       operowanie na zmiennych. Gdy zmienna nazwy referencyjnej jest przywoływana,  przypisywana,
       usuwana  lub  modyfikowane  są  jej  atrybuty  (inne  niż  użycie  lub  zmiana samej nazwy
       referencyjnej), operacja ta  jest  w  rzeczywistości  wykonywana  na  zmiennej  określonej
       wartością  zmiennej  nazwy odniesienia. Nazwa referencyjna jest często używana aby odnieść
       się do zmiennej, której nazwa jest przekazywana  jako  argument  do  funkcji.  Przykładowo
       nazwa zmiennej jest przekazywana do funkcji powłoki w pierwszym argumencie, wykonując
              declare -n ref=$1
       wewnątrz  funkcji  tworzącej  zmienną nazwy referencyjnej ref, której wartością jest nazwa
       zmiennej przekazana jako pierwszy argument. Odniesienie lub przypisanie  ref  oraz  zmiana
       jej  atrybutów  są  traktowane  jako  odniesienie  lub przypisania do zmiennej oraz zmiana
       atrybutów zmiennej której nazwę przekazano jako $1. Jeśli zmienna kontrolujące  pętle  for
       ma  atrybut  nazwy  referencyjnej,  lista  słów  może być listą zmiennych powłoki, a nazwa
       zostanie przypisana za każdemu słowu  z  listy,  w  kolejności,  przy  wykonywaniu  pętli.
       Zmienne   tablicowe   nie  mogą  otrzymać  atrybutu  nameref,  jednak  do  zmiennych  nazw
       referencyjnych mogą odnosić się zmienne tablicowe i wskaźniki zmiennych tablicowych. Nazwy
       referencyjne  można  usunąć stosując opcję -n do polecenia wbudowanego unset. W przeciwnym
       razie, gdy unset jest wykonywane z nazwą referencyjną jako  argument,  zmienna  do  której
       odnosi się nazwa referencyjna zostanie usunięta.

   Parametry pozycyjne
       Parametr pozycyjny to parametr określany cyfrą lub cyframi, innymi niż pojedyncza cyfra 0.
       Parametrom pozycyjnym nadawane są wartości argumentów powłoki (w  czasie  jej  wywołania).
       Wartości  te  mogą  być  ponownie  nadawane  przy  pomocy  wbudowanego  polecenia set.  Do
       parametrów pozycyjnych nie można wykonać przypisania przy pomocy  instrukcji  przypisania.
       Parametry  pozycyjne są tymczasowo zastępowane podczas wykonywania funkcji powłoki (zobacz
       poniżej FUNKCJE).

       Jeżeli interpretowany jest parametr pozycyjny określany więcej niż jedną  cyfrą,  to  musi
       być ujęty w nawiasy (zobacz poniżej INTERPRETACJA).

   Parametry specjalne
       Powłoka  kilka  parametrów  traktuje  specjalnie.  Do  parametrów tych można się wyłącznie
       odwoływać; nie jest dozwolone przypisywanie im wartości.
       *      Interpretowane  jest  jako  parametry  pozycyjne,  począwszy  od  pierwszego.   Gdy
              interpretacja  nie  pojawia się wewnątrz cudzysłowów, każdy parametr pozycyjny jest
              interpretowany jako oddzielne słowo. W  kontekście  w  jakim  występują,  te  słowa
              ulegają kolejnemu  podziałowi  na  słowa  i  rozwijaniu  ścieżek. Gdy interpretacja
              pojawia  się  wewnątrz  cudzysłowów,  to  parametr  ten  interpretowany  jest  jako
              pojedyncze słowo z wartościami każdego z parametrów rozdzielonymi pierwszym znakiem
              zmiennej specjalnej IFS.  To znaczy, "$*" jest równoważne "$1c$2c...", gdzie c jest
              pierwszym  znakiem  wartości  zmiennej  IFS.   Jeżeli  IFS  nie  jest ustawione, to
              parametry oddzielane są spacjami.  Jeśli IFS jest łańcuchem pustym, to parametry są
              ze sobą połączone bez rozdzielających je separatorów.
       @      Interpretowane jako parametry pozycyjne, począwszy od pierwszego. Gdy interpretacja
              pojawia się wewnątrz  cudzysłowów,  to  każdy  parametr  interpretowany  jest  jako
              odrębne  słowo.  To znaczy, "$@" jest równoważne "$1" "$2" ... Jeśli wewnątrz słowa
              zachodzi interpretacja (ujęta w cudzysłowy), to pierwszy  zinterpretowany  parametr
              jest  łączony z początkiem oryginalnego słowa, a interpretacja ostatniego parametru
              jest  łączona  z  końcem  oryginalnego  słowa.  Jeśli  nie  ma  żadnych  parametrów
              pozycyjnych, "$@" i $@ interpretowane są jako nic (tj. są usuwane).
       #      Interpretowane jako liczba parametrów pozycyjnych, podana dziesiętnie.
       ?      Interpretowane jako kod zakończenia ostatnio wykonanego potoku pierwszoplanowego.
       -      Interpretowane  jako  bieżące  flagi  opcji,  takie  jakie  zostały  podane podczas
              wywołania, ustawione przy pomocy wbudowanego polecenia set lub ustawione przez samą
              powłokę (tak jak opcja -i).
       $      Interpretowany   jest   jako   identyfikator  procesu  powłoki.  W  podpowłoce  (),
              interpretowany jest jako ID procesu bieżącej powłoki, nie zaś podpowłoki.
       !      Interpretowany jako ID  procesu  ostatnio  wykonywanego  polecenia  tła,  gdy  jest
              wykonywane  jako  polecenie  asynchroniczne lub używając słowa wbudowanego bg (zob.
              niżej KONTROLA ZADAŃ).
       0      Interpretowany jako nazwa powłoki lub skryptu powłoki. Ustawiane jest to na  etapie
              inicjowania  powłoki.  Jeżeli  bash  wywoływany  został  z  plikiem  poleceń, to $0
              ustawiane jest na nazwę tego pliku. Jeśli bash został uruchomiony z opcją -c, to $0
              jest  ustawiane  na  pierwszy  argument po łańcuchu, jaki ma zostać wywołany, jeśli
              taki występuje. W przeciwnym wypadku,  ustawiany  jest  na  nazwę  pliku  użytą  do
              wywołania bash, jaką podaje argument zerowy.
       _      Podczas   uruchamiania   powłoki,   ustawiany  na  bezwzględną  nazwę  powłoki  lub
              wykonywanego  skryptu  powłoki  przekazanego  w  liście   argumentów.    Następnie,
              interpretowany jest jako ostatni argument poprzedniego polecenia, po interpretacji.
              Ustawiany również na pełną nazwę pliku każdego polecenia wykonanego i umieszczonego
              w  środowisku eksportowanym do tego polecenia.  Podczas sprawdzania poczty parametr
              ten przechowuje nazwę aktualnie sprawdzanego pliku poczty.

   Zmienne powłoki
       Powłoka ustawia następujące zmienne:

       BASH   Interpretowane jako pełna nazwa pliku użyta do wywołania tego przebiegu bash.
       BASHOPTS
              Oddzielana dwukropkiem lista włączonych opcji powłoki. Każde słowo na  liście  jest
              poprawnym   argumentem   do   opcji   -s   wbudowanego   polecenia   shopt   (patrz
              WBUDOWANE POLECENIA POWŁOKI poniżej). Opcje pojawiające się  w  BASHOPTS  są  tymi,
              które  są  raportowane jako włączone (on) przez shopt. Jeśli ta zmienna występuje w
              środowisku podczas uruchamiania  bash,  to  każda  opcja  powłoki  z  listy  będzie
              włączona przed odczytaniem plików startowych. Ta zmienna jest tylko do odczytu.
       BASHPID
              Zmienna   przechowuje   identyfikator   bieżącego   procesu   bash.  W  określonych
              przypadkach,  takich  jak  sytuacja,   gdy   podpowłoki   nie   wymagają   ponownej
              inicjalizacji bash, różni się od $$.
       BASH_ALIASES
              Zmienna  tablicy  asocjacyjnej, której wpisy odpowiadają wewnętrznej liście aliasów
              zarządzanych  przez  wbudowane  polecenie  alias.  Elementy  dodawane  do   tablicy
              pojawiają  się  na  liście  aliasów, jednak usunięcie elementów tablicy obecnie nie
              powoduje usunięcie aliasów z listy aliasów. Jeśli BASH_ALIASES zostanie  skasowana,
              traci swoje specjalne właściwości, nawet jeśli zostanie później zresetowana.
       BASH_ARGC
              Zmienna  tablicowa, której wartościami są liczby parametrów każdej ramki w bieżącym
              stosie wywołania bash. Liczba parametrów bieżącego podprogramu (funkcji powłoki lub
              skryptu  wykonywanego  przez  .  lub  source)  znajduje  się  na  górze  stosu. Gdy
              podprogram jest wykonywany, liczba przekazanych  parametrów  jest  przypisywana  do
              BASH_ARGC.  Powłoka  ustawia  BASH_ARGC wyłącznie w rozszerzonym trybie debugowania
              (patrz opis opcji extdebug wbudowanego polecenie shopt poniżej).
       BASH_ARGV
              Zmienna tablicowa zawierająca wszystkie parametry bieżącego stosu  wywołania  bash.
              Ostatni  parametr  ostatniego wywołania podprogramu jest umieszczony na wierzchołku
              stosu, natomiast pierwszy parametr pierwszego wywołania na spodzie. Gdy  podprogram
              jest  wykonywany,  liczba  przekazanych  parametrów jest przypisywana do BASH_ARGV.
              Powłoka ustawia BASH_ARGV wyłącznie w rozszerzonym trybie debugowania  (patrz  opis
              opcji extdebug wbudowanego polecenie shopt poniżej).
       BASH_CMDS
              Zmienna  tablicy  asocjacyjnej, której wpisy odpowiadają wewnętrznej liście skrótów
              poleceń, zarządzanej przez wbudowane polecenie hash. Elementy dodawane  do  tablicy
              pojawiają  się  na  liście  skrótów, jednak usunięcie elementów tablicy obecnie nie
              powoduje powoduje  usunięcia  ich  z  tablicy  skrótów.  Jeśli  BASH_CMDS  zostanie
              skasowana,   traci  swoje  specjalne  właściwości,  nawet  jeśli  zostanie  później
              zresetowana.
       BASH_COMMAND
              Aktualnie wykonywane polecenie lub polecenie przeznaczone do  wykonania,  chyba  że
              powłoka  wykonuje aktualnie polecenie będące wynikiem zadziałania pułapki - wówczas
              jest to polecenie wykonywane w czasie zadziałania pułapki.
       BASH_EXECUTION_STRING
              Argument polecenia do opcji wywołania -c.
       BASH_LINENO
              Zmienna tablicowa, której  wartościami  są  numery  wierszy  plików  źródłowych,  w
              których  przywołano każdy odpowiednik ze zmiennej FUNCNAME. ${BASH_LINENO[$i]} jest
              numerem  wiersza  w  pliku  źródłowym  (${BASH_SOURCE[$i+1]}),   gdzie   przywołano
              ${FUNCNAME[$i]}  (lub  ${BASH_LINENO[$i-1]},  jeśli  odnosi  się  do  innej funkcji
              powłoki). Proszę użyć LINENO, aby pobrać bieżący numer wiersza.
       BASH_LOADABLES_PATH
              Lista rozdzielonych dwukropkami katalogów,  w  których  powłoka  szuka  dynamicznie
              ładowalnych poleceń wbudowanych podanych przez polecenie enable.
       BASH_REMATCH
              Zmienna tablicowa, której wartości są przypisywane operatorem dwuargumentowym =~ do
              polecenia warunkowego [[. Element o indeksie 0 jest częścią łańcucha pasującego  do
              całego wyrażenia regularnego. Element o indeksie n jest częścią łańcucha pasującego
              do n-tego podwyrażenia ujętego w nawiasy. Zmienna jest tylko do odczytu.
       BASH_SOURCE
              Zmienna tablicowa,  której  wartościami  są  nazwy  plików  źródłowych,  w  których
              zdefiniowano  odpowiadające  nazwy  funkcji powłoki w zmiennej tablicowej FUNCNAME.
              Funkcja powłoki ${FUNCNAME[$i]} jest  zdefiniowana  w  pliku  ${BASH_SOURCE[$i]}  i
              wywoływana z ${BASH_SOURCE[$i+1]}..
       BASH_SUBSHELL
              Zwiększana  o jeden, wewnątrz każdej powłoki lub środowiska podpowłoki, gdy powłoka
              rozpoczyna wykonywanie w tym środowisku. Wartością początkową jest 0.
       BASH_VERSINFO
              Zmienna tablicowa tylko do odczytu, której elementy zawierają informacje  o  wersji
              uruchomionego bash.  Wartości przypisane elementom tablicy są następujące:
              BASH_VERSINFO[0]        Główny numer wersji, wydanie (release).
              BASH_VERSINFO[1]        Poboczny numer wersji (version).
              BASH_VERSINFO[2]        Poziom łat (patch level).
              BASH_VERSINFO[3]        Wersja kompilatu (build version).
              BASH_VERSINFO[4]        Status wydania (np. beta1).
              BASH_VERSINFO[5]        Wartość MACHTYPE.
       BASH_VERSION
              Interpretowane jako łańcuch opisujący wersję uruchomionego bash.
       COMP_CWORD
              Indeks  w  ${COMP_WORDS}  słowa  zawierającego bieżącą pozycję kursora.  Zmienna ta
              jest dostępna wyłącznie w funkcjach powłoki wywołanych przez usługi programowalnego
              uzupełniania (zobacz poniżej Programowalne uzupełnianie).
       COMP_KEY
              Klawisz  (lub  ostatni  klawisz  w  sekwencji klawiszy) użyty do wywołania bieżącej
              funkcji uzupełniania.
       COMP_LINE
              Bieżący wiersz poleceń. Ta zmienna  jest  dostępna  tylko  w  funkcjach  powłoki  i
              poleceniach  zewnętrznych  wywoływanych  przez  usługi programowalnego uzupełniania
              (zobacz poniżej Programowalne uzupełnianie).
       COMP_POINT
              Indeks bieżącej pozycji kursora  względem  początku  bieżącego  polecenia.   Jeżeli
              kursor  jest  na  końcu  bieżącego  polecenia,  to  wartość tej zmiennej jest równa
              ${#COMP_LINE}.  Ta zmienna jest dostępna tylko w funkcjach  powłoki  i  poleceniach
              zewnętrznych wywoływanych przez usługi programowalnego uzupełniania (zobacz poniżej
              Programowalne uzupełnianie).
       COMP_TYPE
              Ustawiana na wartość całkowitą odpowiadającą  typowi  uzupełnienia,  którego  próbę
              przeprowadzono,   które   spowodowało   wywołanie  funkcji  uzupełnienia:  TAB,  do
              normalnego uzupełnienia, ?, do wypisywania uzupełnień po udanej  tabulacji,  !,  do
              wypisywania  alternatyw częściowego uzupełnienia słowa, @, do wypisania uzupełnień,
              jeśli słowo nie zostało zmodyfikowane lub %, do uzupełnienia menu. Zmienna ta  jest
              dostępna  tylko  w  funkcjach  powłoki  i zewnętrznych poleceniach wywołanych przez
              narzędzia  programowalnego  uzupełnienia  powłoki  (patrz   poniżej   Programowalne
              uzupełnienie).
       COMP_WORDBREAKS
              Zestaw  znaków traktowanych przez bibliotekę readline jako separatory słów, podczas
              przeprowadzania uzupełnień słów. Jeśli unieważniono COMP_WORDBREAKS, to  traci  swe
              specjalne właściwości, nawet jeżeli jest następnie ponownie ustawiona.
       COMP_WORDS
              Zmienna  tablicowa  (patrz  Tablice  poniżej)  składająca się z pojedynczych słów z
              aktualnego wiersza poleceń. Wiersz jest dzielony na słowa tak, jak  podzieliłby  go
              readline,  używając  COMP_WORDBREAKS,  zgodnie  z  opisem  powyżej. Zmienna ta jest
              dostępna wyłącznie w funkcjach  powłoki  wywołanych  przez  usługi  programowalnego
              uzupełniania (zobacz poniżej Programowalne uzupełnianie).
       COPROC Zmienna  tablicowa  (patrz  poniżej  Tablice)  tworzona do zatrzymania deskryptorów
              plików  z  wyjścia  lub   wejścia   nienazwanych   koprocesów   (zobacz   Koprocesy
              (współprocesy) powyżej).
       DIRSTACK
              Zmienna  tablicowa  (zobacz  Tablice  poniżej)  zawierająca bieżącą zawartość stosu
              katalogów. Katalogi pojawiają się na stosie w kolejności, w jakiej  są  wyświetlane
              przez  wbudowane  dirs.   Przypisanie  do  elementów  tej  zmiennej tablicowej może
              posłużyć do zmiany  katalogów  już  występujących  na  stosie,  ale  do  dodania  i
              usunięcia  katalogów  muszą być użyte wbudowane pushd i popd.  Przypisanie wartości
              tej zmiennej nie zmieni bieżącego katalogu.  Jeśli DIRSTACK jest  unieważnione,  to
              traci swe specjalne właściwości, nawet jeżeli jest następnie ponownie ustawione.
       EUID   Interpretowane  jako efektywny identyfikator bieżącego użytkownika, inicjowane przy
              uruchamianiu powłoki. Zmienna ta jest tylko do odczytu.
       FUNCNAME
              Zmienna tablicowa zawierająca nazwy wszystkich funkcji powłoki  obecnych  w  stosie
              wywołań.  Element  z  indeksem  0 jest nazwą aktualnie wykonywanej funkcji powłoki.
              Najniższy element (tzn. z najwyższym numerem indeksu) to "main".  Zmienna  istnieje
              tylko  gdy  wykonywana  jest  funkcja  powłoki. Przypisania do FUNCNAME nie odnoszą
              skutku. Jeśli FUNCNAME jest unieważniona, to traci swe specjalne właściwości, nawet
              jeśli jest następnie ponownie ustawiona.

              Zmienna  ta  może  zostać  użyta  razem  z BASH_LINENO i BASH_SOURCE. Każdy element
              FUNCNAME ma swój odpowiednik w BASH_LINENO i BASH_SOURCE opisujący stos  wywołania.
              Na  przykład,  ${FUNCNAME[$i]}  została  wywołana  z  pliku  ${BASH_SOURCE[$i+1]} w
              wierszu o numerze ${BASH_LINENO[$i]}. Wbudowane polecenie caller wyświetla  bieżący
              stos wywołania używając tej informacji.
       GROUPS Zmienna   tablicowa   zawierająca   listę  grup,  których  członkiem  jest  bieżący
              użytkownik. Próby przypisywania wartości  do  GROUPS  nie  odnoszą  efektu.  Jeżeli
              GROUPS  jest  unieważnione,  to  traci swe specjalne właściwości, nawet jeżeli jest
              następnie ponownie ustawione.
       HISTCMD
              Licznik historii (indeks na liście historii poleceń) bieżącego  polecenia.   Jeżeli
              HISTCMD  jest  unieważnione,  to traci swe specjalne właściwości, nawet jeżeli jest
              następnie ponownie ustawione.
       HOSTNAME
              Automatycznie ustawiane na nazwę aktualnego hosta.
       HOSTTYPE
              Automatycznie ustawiane na łańcuch unikalnie opisujący typ maszyny, na której  jest
              wykonywany bash.  Wartość domyślna zależy od systemu.
       LINENO Przy  każdym  odwołaniu  do  tego  parametru  powłoka zastępuje jego wartość liczbą
              dziesiętną reprezentującą aktualny kolejny numer wiersza (poczynając od 1)  skryptu
              lub  funkcji.  Nie  zapewnia  się, by wartość ta miała znaczenie poza skryptem bądź
              funkcją.  Jeśli LINENO jest unieważnione, to traci swe specjalne właściwości, nawet
              jeżeli jest następnie ponownie ustawione.
       MACHTYPE
              Automatycznie  ustawiane  na  łańcuch w pełni opisujący typ systemu, na którym jest
              wykonywany bash, w standardowym formacie GNU  cpu-firma-system.   Wartość  domyślna
              zależy od systemu.
       MAPFILE
              Zmienna   tablicowa   (patrz   Tablice  poniżej)  tworzona  do  zatrzymania  tekstu
              odczytywanego przez wbudowane polecenie mapfile, gdy nie podano nazwy zmiennej.
       OLDPWD Poprzedni katalog roboczy ustawiony poleceniem cd.
       OPTARG Wartość  ostatniego,  będącego  opcją,  argumentu  przetworzonego  przez  wbudowane
              polecenie getopts (zobacz poniżej WBUDOWANE POLECENIA POWŁOKI).
       OPTIND Numer  (indeks)  następnego  argumentu, jaki ma zostać przetworzony przez wbudowane
              polecenie getopts (zobacz poniżej WBUDOWANE POLECENIA POWŁOKI).
       OSTYPE Automatycznie ustawiane na łańcuch  opisujący  system  operacyjny,  w  którym  jest
              wykonywany bash.  Wartość domyślna zależy od systemu.
       PIPESTATUS
              Zmienna  tablicowa  (zobacz  Tablice  poniżej) zwierająca listę kodów zakończenia z
              procesów w  ostatnio  wykonywanym  potoku  pierwszoplanowym  (który  może  zawierać
              pojedyncze polecenie).
       PPID   Identyfikator procesu macierzystego powłoki. Zmienna ta jest tylko do odczytu.
       PWD    Bieżący katalog roboczy, ustawiony poleceniem cd.
       RANDOM Za  każdym  razem,  gdy  następuje  odwołanie  do  tego  parametru, generowana jest
              całkowita liczba losowa z zakresu od 0 do 32767.  Sekwencję  liczb  losowych  można
              zainicjować  przypisując  wartość  do  RANDOM.  Jeżeli RANDOM jest unieważniona, to
              traci swe specjalne właściwości, nawet jeżeli jest następnie ponownie ustawiona.
       READLINE_LINE
              Zawartość bufora wiersza realine, do użycia z "bind -x" (patrz WBUDOWANE  POLECENIA
              POWŁOKI poniżej).
       READLINE_POINT
              Pozycja  punktu  wprowadzania  w  buforze  wiersza  readline, do użycia z "bind -x"
              (patrz WBUDOWANE POLECENIA POWŁOKI poniżej).
       REPLY  Ustawiona na wiersz wejścia odczytany wbudowanym poleceniem read jeśli  nie  podano
              żadnych jego argumentów.
       SECONDS
              Każdorazowo,  gdy  występuje  odwołanie  do  tego  parametru,  zwracana jest liczba
              sekund, jakie upłynęły od wywołania powłoki. Jeżeli do SECONDS zostanie  przypisana
              wartość,  to  wartość zwracana przez kolejne odwołania jest równa liczbie sekund od
              czasu przypisania plus przypisana wartość.  Jeżeli SECONDS  jest  unieważnione,  to
              traci swe specjalne właściwości, nawet jeżeli jest następnie ponownie ustawione.
       SHELLOPTS
              Lista,  rozdzielonych dwukropkami, włączonych opcji powłoki. Każde słowo listy jest
              poprawnym argumentem opcji -o wbudowanego polecenia set (zobacz WBUDOWANE POLECENIA
              POWŁOKI  poniżej). Opcje pojawiające się w SHELLOPTS to te, które są zgłaszane jako
              włączone (on) przez set  -o.   Jeśli  zmienna  ta  istnieje  w  środowisku  podczas
              uruchamiania  bash,  to  każda  z  opcji powłoki występująca na tej liście zostanie
              włączona przed odczytem jakichkolwiek plików startowych.  Jest to zmienna tylko  do
              odczytu.
       SHLVL  Inkrementowana każdorazowo, gdy uruchamiane jest kolejne wystąpienie bash.
       UID    Interpretowane   jako   identyfikator   bieżącego   użytkownika,   inicjowane  przy
              uruchamianiu powłoki. Zmienna ta jest tylko do odczytu.

       Poniższe zmienne są używane przez powłokę. W niektórych  przypadkach  bash  przypisuje  im
       domyślne wartości; przypadki te są odnotowane niżej.

       BASH_COMPAT
              Wartość  używana  do  ustawienia  poziomu  kompatybilności  powłoki.  Opis  różnych
              poziomów kompatybilności i ich skutki znajduje się przy poleceniu wbudowanym  shopt
              w  rozdziale  WBUDOWANE  POLECENIA POWŁOKI. Wartość może być liczbą dziesiętną (np.
              4.2)  lub  całkowitą  (np.  42)  określającą dany  poziom  kompatybilności.   Jeśli
              BASH_COMPAT   jest  nieustawione,  lub  przypisano  mu  łańcuch  pusty,  to  poziom
              kompatybilności jest ustawiony na domyślny dla bieżącej wersji.  Jeśli  BASH_COMPAT
              ustawiono  na  wartość  niebędącą  poprawnym  poziomem  kompatybilności, to powłoka
              wypisze komunikat o  błędzie  i  ustawi  poziom  kompatybilności  na  domyślny  dla
              bieżącej   wersji.   Poprawne   poziomy   kompatybilności   są   takie   jak  opcje
              kompatybilności akceptowane przez polecenie wbudowane shopt  opisane  poniżej  (np.
              compat42  oznacza, że poprawnymi wersjami są 4.2 i 42). Bieżąca wersja również jest
              poprawną wartością.
       BASH_ENV
              Jeżeli parametr ten jest ustawiony podczas wykonywania przez bash skryptu, to  jego
              wartość   interpretowana   jest   jako   nazwa  pliku  zawierającego  polecenia  do
              zainicjowania powłoki, jak w ~/.bashrc.   Wartość  BASH_ENV  podlega  interpretacji
              parametrów,  podstawianiu  wyników  poleceń i interpretacjom wyrażeń arytmetycznych
              przed interpretacją jej jako  nazwy  pliku.   Zmienna  PATH  nie  jest  używana  do
              znalezienia pliku o powstałej w ten sposób nazwie.
       BASH_XTRACEFD
              Jeśli  ustawiono  liczbę całkowitą odpowiadającą poprawnemu deskryptorowi pliku, to
              bash  zapisze  wyjście  stosu  wygenerowane  gdy  set  -x  jest  włączone  do  tego
              deskryptora  pliku.  Deskryptor  pliku jest zamykany gdy BASH_XTRACEFD jest usuwana
              lub przy przypisaniu nowej wartości. Usunięcie BASH_XTRACEFD  lub  przypisanie  jej
              łańcucha  pustego  powoduje  wysłanie  stosu  na standardowe wyjście błędów. Proszę
              zauważyć, że ustawienie BASH_XTRACEFD na 2 (deskryptor  pliku  wyjścia  błędów),  a
              następnie usunięcie jej spowoduje zamknięcie standardowego wyjścia błędów.
       CDPATH Ścieżka  wyszukiwania  dla  polecenia  cd.  Jest to lista rozdzielonych dwukropkami
              katalogów, w których powłoka szuka katalogów docelowych  podanych  przez  polecenie
              cd.  Przykładową wartością jest ".:~:/usr".
       CHILD_MAX
              Ustawia  liczbę  wartości  kodów  wyjścia zakończonych procesów potomnych, które ma
              zapamiętać powłoka. Bash nie pozwoli na zmniejszenie tej wartości  poniżej  minimum
              określonego normą POSIX, istnieje również wartość maksymalna (obecnie 8192), której
              nie można przekroczyć. Minimalna wartość jest zależna od systemu.
       COLUMNS
              Używana przez polecenie wbudowane select do wyznaczenia szerokości  terminala  przy
              wypisywaniu  list  wyboru. Ustawiana automatycznie, gdy włączono opcję checkwinsize
              oraz w powłoce interaktywnej po otrzymaniu SIGWINCH.
       COMPREPLY
              Zmienna tablicowa, z której bash czyta możliwe uzupełnienia tworzone przez  funkcję
              powłoki   wywołaną   przez  usługę  programowalnego  uzupełniania  (zobacz  poniżej
              Programowalne  uzupełnianie).  Każdy  element   tablicy   zawiera   jedno   możliwe
              uzupełnienie.
       EMACS  Gdy  bash  znajdzie  opisywaną zmienną w środowisku podczas uruchamiania powłoki, z
              wartością ustawioną na "t", to przyjmuje,  że  powłoka  działa  w  buforze  powłoki
              Emacsa i wyłącza edycję wiersza.
       ENV    Podobnie jak BASH_ENV; używana gdy powłoka jest wywołana w trybie POSIX.
       EXECIGNORE
              Lista   oddzielonych   dwukropkami   wzorców   powłoki  (zob.  Dopasowanie  wzorca)
              definiujących listę nazw plików ignorowanych przy szukaniu poleceń za  pomocą PATH.
              Pliki których pełna ścieżka pasuje do jednego z tych wzorców nie są traktowane jako
              pliki wykonywalne dla dopełniania i wykonywania poleceń przez PATH. Nie  wpływa  to
              na  zachowanie  poleceń [, test oraz [[. Pełne ścieżki w liście skrótów poleceń nie
              są przedmiotem EXECIGNORE. Tę zmienną należy używać do ignorowania plików bibliotek
              współdzielonych,   które  mają ustawione  prawo  wykonywania,  ale  nie  są plikami
              wykonywalnymi. Dopasowanie wzorców przestrzega ustawień opcji powłoki extglob.
       FCEDIT Domyślny edytor dla wbudowanego polecenia fc.
       FIGNORE
              Lista rozdzielonych dwukropkami przyrostków,  jakie  mają  być  ignorowane  podczas
              uzupełniania  nazw  plików  (zobacz  READLINE  poniżej).   Nazwa pliku o przyrostku
              pasującym do jednej z pozycji FIGNORE wyłączana  jest  z  listy  dopasowanych  nazw
              plików.    Przykładową   wartością  jest  ".o:~"  (cytowanie  jest  niezbędne  przy
              przypisywaniu do tej zmiennej wartości zawierającej tyldy).
       FUNCNEST
              Gdy jest ustawiona na wartość numeryczną  większą  od  zera,  definiuje  maksymalny
              poziom  zagnieżdżenia  funkcji.  Wywołania  funkcji przekraczające określony poziom
              będą powodowały przerwanie bieżącego polecenia.
       GLOBIGNORE
              Lista rozdzielonych dwukropkami wzorców definiujących  zestaw  nazw  plików,  jakie
              mają być ignorowane podczas rozwijania nazw plików.  Jeżeli plik pasujący do wzorca
              rozwijającego nazwę ścieżkową pasuje również do któregoś z wzorców w GLOBIGNORE, to
              jest on usuwany z listy dopasowanych.
       HISTCONTROL
              Lista rozdzielonych dwukropkami wartości, określającymi sposób zapisywania w liście
              historii. Jeżeli posiada wartość ignorespace,  to  wiersze  rozpoczynające  się  od
              znaku   spacji  nie  są  wprowadzane  do  listy  historii.  Jeśli  posiada  wartość
              ignoredups, to wiersze pasujące do ostatniego wiersza historii nie są  wprowadzane.
              Wartość ignoreboth łączy obie te możliwości. Wartość erasedups powoduje usunięcie z
              historii  wszystkich  wcześniejszych  wierszy,  pasujących  do   bieżącego,   przed
              zapisaniem listy. Wszystkie wartości poza wymienionymi powyżej są ignorowane. Jeśli
              zmienna ta nie jest zdefiniowana lub ma wartość inną od  powyższych,  to  wszystkie
              wiersze  przeczytane  przez  analizator  składni  zachowywane są w liście historii,
              stosownie do wartości HISTIGNORE.  Drugi  i  kolejne  wiersze  złożonego  polecenia
              wielowierszowego nie są sprawdzane i są dodawane do historii bez względu na wartość
              HISTCONTROL.
       HISTFILE
              Nazwa pliku, w którym zachowywana jest historia poleceń (zobacz HISTORIA  poniżej).
              Wartością  domyślną  jest  ~/.bash_history.  Jeśli ustawienie tej zmiennej zostanie
              skasowane, to historia poleceń nie będzie zachowana po zakończeniu pracy powłoki.
       HISTFILESIZE
              Maksymalna  liczba  wierszy  zawartych  w  pliku  historii.  Podczas  przypisywania
              wartości  tej  zmiennej, jeżeli jest to niezbędne, plik historii jest obcinany tak,
              by nie zawierał więcej wierszy, przez usunięcie najstarszych wpisów. Plik  historii
              jest także obcinany do tego rozmiaru po zapisaniu go w czasie kończenia pracy przez
              powłokę. Jeśli wartość wynosi 0, plik historii  jest  obcinany  do  zera.  Wartości
              nienumeryczne i wartości numeryczne mniejsze niż zero wstrzymują obcinanie. Powłoka
              ustawia wartość domyślną do wartości HISTSIZE  po  odczytaniu  plików  początkowych
              powłoki.
       HISTIGNORE
              Lista  rozdzielonych  dwukropkami  wzorców  służących do decydowania, jakie wiersze
              poleceń powinny być zachowane w liście historii. Każdy z wzorców zakotwiczony  jest
              na  początku  wiersza  i  musi  pasować  do całego wiersza (nie jest dodawane żadne
              niejawne `*'). Każdy z wzorców sprawdzany jest z  bieżącym  wierszem  po  wykonaniu
              kontroli  określonych  przez  HISTCONTROL.   Oprócz  zwykłych  znaków dopasowywania
              wzorców używanych przez powłokę, `&' dopasowuje poprzedni wiersz historii.  Literał
              `&'  można  uzyskać  poprzedzając  go  odwrotnym  ukośnikiem; odwrotny ukośnik jest
              usuwany przed próbą  dopasowania.  Druga  i  kolejne  wiersze  złożonego  polecenia
              wielowierszowego nie są sprawdzane i są dodawane do historii bez względu na wartość
              HISTIGNORE. Dopasowanie wzorców honoruje ustawienia opcji powłoki extglob.
       HISTSIZE
              Liczba poleceń do zapamiętania w historii poleceń (zob.  HISTORIA  poniżej).  Jeśli
              wartość  wynosi  0,  polecenia  nie  są zachowywane w historii. Wartości numeryczne
              mniejsze niż zero powodują, że każde polecenie jest zapamiętywane w historii (znosi
              limit).  Powłoka  ustawia  wartość  domyślną  500 po odczytaniu plików początkowych
              powłoki.
       HISTTIMEFORMAT
              Gdy ta zmienna jest ustawiona i nie jest pusta, jej wartość jest użyta  jak  format
              łańcucha  do strftime(3), w celu wyświetlenia pieczątki czasowej związanej z każdym
              wpisem historii, wyświetlanym przez wbudowane polecenie history. Gdy  zmienna  jest
              ustawiona, pieczątki czasowe są zapisywane do pliku historii, dzięki czemu mogą być
              zachowywane między sesjami powłoki. Używany jest wówczas znak komentarza  historii,
              aby odróżnić pieczątki czasowe od pozostałych wierszy historii.
       HOME   Katalog  domowy  bieżącego użytkownika; domyślny argument wbudowanego polecenia cd.
              Wartość tej zmiennej wykorzystywana jest też przy wykonywaniu interpretacji tyld.
       HOSTFILE
              Zawiera nazwę pliku o tym samym formacie co /etc/hosts który powinien być  czytany,
              gdy  powłoka  potrzebuje  uzupełnić  nazwę hosta.  Listę możliwych uzupełnień można
              zmieniać  podczas  pracy  powłoki.  Następnym  razem,  gdy  wykonywana  jest  próba
              uzupełnienia  nazwy  hosta  bash  dodaje  zawartość nowego pliku do już istniejącej
              listy.  Jeżeli HOSTFILE jest ustawione, ale  nie  posiada  wartości,  bash  usiłuje
              uzyskać  listę  możliwych  uzupełnień  nazw hostów czytając /etc/hosts Gdy HOSTFILE
              jest unieważniane, lista hostów jest czyszczona.
       IFS    Wewnętrzny Separator Pól (Internal Field Separator) używany do podziału na słowa po
              interpretacjach  i  dzieleniu  wierszy na słowa we wbudowanym poleceniu read.  Jego
              domyślną wartością jest ,,<spacja><tabulacja><nowalinia>”.
       IGNOREEOF
              Steruje działaniem powłoki interaktywnej przy otrzymaniu przez nią znaku  EOF  jako
              jedynego znaku wejścia. Jeżeli jest ustawiona, to jej wartość jest liczbą kolejnych
              znaków EOF jakie muszą być wpisane jako pierwsze znaki wiersza  wprowadzania  przed
              zakończeniem pracy przez bash.  Jeśli zmienna ta istnieje, ale nie zawiera wartości
              numerycznej lub nie  ma  wartości,  to  wartością  domyślną  jest  10.  Jeżeli  nie
              istnieje, to EOF wskazuje powłoce koniec wprowadzanych danych.
       INPUTRC
              Nazwa  pliku  startowego  dla  readline,  unieważniająca  domyślny  plik ~/.inputrc
              (zobacz READLINE poniżej).
       LANG   Służy   do   wyznaczania   kategorii   locale   dla   wszystkich   kategorii    nie
              wyszczególnionych przez zmienne rozpoczynające się od znaków LC_.
       LC_ALL Zmienna  ta  unieważnia wartość LANG i wszelkich innych zmiennych LC_ określających
              kategorie locale.
       LC_COLLATE
              Ta zmienna wyznacza kolejność (collation order)  używaną  przy  sortowaniu  wyników
              rozwijania  nazw plików, decyduje też o zachowaniu wielu wyrażeń, klas równoważnych
              i  sekwencje  sortowania  (collating  sequences)  w  rozwijaniu   nazw   plików   i
              dopasowywaniu wzorców.
       LC_CTYPE
              Ta  zmienna  decyduje  o interpretacji znaków i zachowaniu się klas znaków wewnątrz
              rozwijania nazw plików i dopasowywania wzorców.
       LC_MESSAGES
              Ta  zmienna  decyduje  o  ustawieniu  locale  używanym  do  tłumaczenia  ujętych  w
              cudzysłowy łańcuchów poprzedzonych znakiem $.
       LC_NUMERIC
              Ta zmienna określa kategorię locale używaną do formatowania liczb.
       LC_TIME
              Ta zmienna określa kategorię locale używaną do formatowania daty i czasu.
       LINES  Używana  przez  polecenie  wbudowane  select  do  wyznaczenia  długości kolumn przy
              wypisywaniu list wyboru.  Ustawiana automatycznie gdy włączono  opcję  checkwinsize
              oraz w powłoce interaktywnej po otrzymaniu po otrzymaniu SIGWINCH.
       MAIL   Jeżeli  parametrowi  temu jest przypisana nazwa pliku, a nie jest ustawiona zmienna
              MAILPATH, to bash informuje użytkownika o nadejściu poczty do  podanego  pliku  lub
              katalogu w formacie Maildir.
       MAILCHECK
              Określa jak często (w sekundach) bash sprawdza pocztę. Domyślnie jest to 60 sekund.
              Gdy nadchodzi pora sprawdzenia poczty,  powłoka  wykonuje  to  przed  wyświetleniem
              głównej zachęty.  Jeśli zmienna ta nie jest ustawiona lub jest ustawiona na wartość
              nie większą od zera lub zero, to powłoka wyłącza sprawdzanie poczty.
       MAILPATH
              Lista rozdzielonych dwukropkami nazw plików, w jakich  ma  być  sprawdzana  poczta.
              Można  podać  komunikat, jaki ma zostać wyświetlony, gdy do danego pliku przybędzie
              wiadomość pocztowa, przez oddzielenie nazwy pliku od komunikatu znakiem '?'.  Użyte
              w tekście komunikatu, $_ interpretowane jest jako nazwa bieżącego pliku pocztowego.
              Przykład:
              MAILPATH='/var/mail/bfox?"You have mail":~/shell-mail?"$_ has mail!"'
              Bash można skonfigurować, aby zapewnił tej zmiennej wartość domyślną (domyślnie jej
              nie  posiada),  ale  położenie  plików  pocztowych użytkownika, jakim się posługuje
              zależy od systemu (np. /var/mail/$USER).
       OPTERR Jeżeli ustawiono na wartość 1, bash wyświetla  komunikaty  o  błędach  generowanych
              przez  wbudowane  polecenie  getopts  (zobacz WBUDOWANE POLECENIA POWŁOKI poniżej).
              OPTERR inicjowane jest na 1 każdorazowo, gdy wywoływana jest powłoka lub wykonywany
              jest skrypt powłoki.
       PATH   Ścieżka  wyszukiwania poleceń. Jest to lista rozdzielanych dwukropkami katalogów, w
              których powłoka szuka poleceń (zobacz WYKONYWANIE POLECEŃ poniżej). Nazwa  katalogu
              zerowej  długości  (pusta)  oznacza katalog bieżący. Pusty katalog można podać jako
              dwa złączone dwukropki lub początkowy  albo  końcowy  dwukropek.  Domyślna  ścieżka
              zależy  od  systemu  i  ustawiana  jest  przez  administratora  instalującego bash.
              Powszechną wartością jest ``/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:
              /sbin''.
       POSIXLY_CORRECT
              Jeśli  podczas uruchamiania bash w środowisku istnieje ta zmienna, to powłoka przed
              odczytem plików startowych wchodzi w tryb  posix,  tak  jakby  przy  jej  wywołaniu
              podano  opcję  --posix.  Jeśli zmienna ta zostanie ustawiona podczas pracy powłoki,
              to bash włącza tryb posix, tak jakby zostało wykonane polecenie set -o posix

       PROMPT_COMMAND
              Jeżeli jest ustawiona, to jej wartość jest wykonywana jako polecenie  przed  każdym
              wysłaniem zachęty głównej.
       PROMPT_DIRTRIM
              Gdy  jest ustawiona na liczbę większa od zera, jej wartość jest używana jako liczba
              początkowych składowych katalogów do usunięcia  podczas  interpretowania  sekwencji
              specjalnych łańcucha zachęty \w i \W (patrz poniżej ZACHĘTA POWŁOKI). Usuwane znaki
              są zastępowane wielokropkiem.
       PS0    Wartość tego parametru jest interpretowana (zobacz poniżej ZACHĘTA)  i  wyświetlana
              przez powłokę interaktywną po odczytaniu polecenia, a przed jego wykonaniem.
       PS1    Wartość tego parametru jest interpretowana (zobacz poniżej ZACHĘTA)  i używana jako
              główny łańcuch zachęty. Jego wartością domyślną jest "\s-\v\$ ".
       PS2    Wartość  tego  parametru  jest  interpretowana  jak  PS1  i  używana  jako   wtórny
              (secondary) łańcuch zachęty. Domyślnie jest to "> ".
       PS3    Wartość  tego  parametru  służy  jako  zachęta  w  poleceniu select (zobacz powyżej
              GRAMATYKA POWŁOKI).
       PS4    Wartość tego parametru interpretowana  jest  jak  PS1  i  wypisywana  przed  każdym
              poleceniem  wyświetlanym  przez  bash podczas śledzenia wykonywania.  Pierwszy znak
              PS4, w razie potrzeby, powtarzany jest  wielokrotnie,  by  wskazać  wiele  poziomów
              zagnieżdżenia.  Domyślnie jest to "+ ".
       SHELL  Pełna  ścieżka  powłoki  jest przechowywana w tej zmiennej środowiskowej. Jeśli nie
              jest ustawiona podczas uruchamiania powłoki, bash  przypisuje  jej  wartość  pełnej
              ścieżki powłoki zgłoszeniowej bieżącego użytkownika.
       TIMEFORMAT
              Wartość  tego  parametru  służy jako łańcuch formatu określającego, jak powinna być
              wyświetlana informacja o czasach  dla  potoków  poprzedzonych  słowem  zastrzeżonym
              time. Znak % rozpoczyna sekwencję specjalną, która jest interpretowana jako wartość
              czasu lub inna informacja. Sekwencje specjalne  i  ich  znaczenie  są  następujące;
              nawiasy kwadratowe opisują części opcjonalne.
              %%        Dosłowny znak %.
              %[p][l]R  Czas, jaki upłynął, w sekundach.
              %[p][l]U  Liczba sekund, jakie CPU zużył w trybie użytkownika.
              %[p][l]S  Liczba sekund, jakie CPU zużył w trybie systemowym.
              %P        Procent wykorzystania CPU, liczony jako (%U + %S) / %R.

              Opcjonalne  p jest cyfrą określającą dokładność (precision), liczbę cyfr ułamkowych
              po kropce dziesiętnej.  Wartość zero powoduje, że nie będzie wyświetlana ani kropka
              dziesiętna  ani część ułamkowa.  Mogą być podane co najwyżej trzy miejsca po kropce
              dziesiętnej; wartości p większe od 3 zmieniane są na 3.  Jeżeli nie  podano  p,  to
              używana jest wartość 3.

              Opcjonalne l określa dłuższy (longer) format wyników, zawierający minuty, w postaci
              MMmSS.FFs.  O tym, czy występuje ułamkowa część sekund decyduje wartość p.

              Jeżeli zmienna ta nie jest ustawiona, to bash działa tak, jakby miała  ona  wartość
              $'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS'. Jeżeli jej wartością jest pusty łańcuch, to
              nie jest wyświetlana żadna informacja o  czasach  (timing).   Podczas  wyświetlania
              łańcucha formatu dodawany jest kończący znak nowej linii.
       TMOUT  Jeśli  ustawione  na  wartość  większą  od  zera, to TMOUT jest interpretowane jako
              domyślny czas oczekiwania wbudowanego read. Polecenie select kończy się, jeśli dane
              nie  zostaną  wprowadzone  po  liczbie  TMOUT  sekund,  jeżeli  wejście  pochodzi z
              terminala. W przypadku powłok  interaktywnych,  wartość  jest  interpretowana  jako
              liczba  sekund  określającą  czas,  przez  jaki  powłoka  ma czekać na wprowadzenie
              wiersza danych po wyświetleniu głównej zachęty. Bash  kończy  pracę  po  odczekaniu
              tego czasu jeśli pełen wiersz danych nie pojawił się.
       TMPDIR Jeśli  jest  ustawiona, bash używa jej wartości jako nazwy katalogu w którym tworzy
              pliki tymczasowe do użytku powłoki.
       auto_resume
              Zmienna ta steruje sposobem interakcji powłoki z użytkownikiem i sposobem  kontroli
              zadań.  Jeżeli  jest  ustawiona, to jednowyrazowe polecenia proste bez przekierowań
              traktowane są jako aspirujące do wznowienia istniejącego zatrzymanego zadania.  Nie
              pozwala   się   na   żadną  dwuznaczność;  jeśli  jest  więcej  niż  jedno  zadanie
              rozpoczynające się od  wpisanego  łańcucha,  wybierane  jest  zadanie,  do  którego
              ostatnio  sięgano.   Nazwa  zatrzymanego  zadania,  w tym kontekście, jest wierszem
              poleceń użytym do jego  uruchomienia.   Jeśli  posiada  wartość  exact,  to  podany
              łańcuch  musi pasować dokładnie do nazwy zatrzymanego zadania; Jeśli jest ustawione
              na substring, to podany łańcuch powinien pasować do podłańcucha nazwy  zatrzymanego
              zadania.   Wartość  substring zapewnia funkcjonalność analogiczną do identyfikatora
              zadania %? (zobacz STEROWANIE ZADANIAMI poniżej).  Jeśli ustawiono inną wartość, to
              podany  łańcuch  musi  być  przedrostkiem  nazwy  zatrzymanego zadania; zapewnia to
              funkcjonalność analogiczną do identyfikatora zadania %.
       histchars
              Dwa lub trzy znaki sterujące interpretacją historii i podziałem na leksemy  (zobacz
              poniżej   INTERPRETACJA   HISTORII).   Pierwszy  znak  jest  znakiem  interpretacji
              historii, sygnalizującym początek interpretacji historii, zwykle `!'.   Drugi  znak
              jest znakiem szybkiego podstawiania, ("quick substitution"), służącym jako skrót do
              powtórnego  uruchamiania  poprzednio  wprowadzonego  polecenia,  podstawiającym   w
              poleceniu  jeden  łańcuch  za  inny.  Domyślnym znakiem szybkiego podstawiania jest
              `^'.  Opcjonalny, trzeci znak jest znakiem wskazującym, że pozostała część wiersza,
              w  którym  występuje on jako pierwszy znak słowa, jest komentarzem.  Zwykle znakiem
              tym jest `#'. Znak komentarza historii powoduje, że dla  pozostałych  słów  wiersza
              podstawianie  historii jest pomijane.  Niekoniecznie powoduje to traktowanie reszty
              wiersza jako komentarza przez analizator składni powłoki.

   Tablice
       Bash udostępnia indeksowane i asocjacyjne zmienne tablicowe jednowymiarowe.  Jako  tablica
       może  zostać  użyta  dowolna zmienna; wbudowane declare jawnie zadeklaruje tablicę. Nie ma
       maksymalnego rozmiaru tablic, ani wymagania, by wszystkie jej  elementy  były  indeksowane
       czy  przypisywane  w  sposób ciągły. Do tablic indeksowanych można się odwołać przy pomocy
       liczb całkowitych (w tym wyrażeń arytmetycznych), począwszy  od  zera;  natomiast  tablice
       asocjacyjne  używają  konkretnych  łańcuchów. Jeśli nie zaznaczono inaczej, indeksy tablic
       indeksowanych muszą być nieujemnymi liczbami całkowitymi.

       Tablica indeksowana tworzona jest  automatycznie  jeśli  wykonywane  jest  przypisanie  do
       jakiejś zmiennej przy pomocy składni nazwa[wskaźnik]=wartość.  Wskaźnik tablicy traktowany
       jest jako wyrażenie arytmetyczne, które musi po interpretacji  dać  liczbę.  Chcąc  jawnie
       zadeklarować  tablicę  indeksowaną,  użyj  declare  -a  nazwa  (zobacz WBUDOWANE POLECENIA
       POWŁOKI poniżej).  declare -a nazwa[wskaźnik]  jest  również  akceptowane;  wskaźnik  jest
       wówczas ignorowany.

       Tablice asocjacyjne są tworzone za pomocą konstrukcji declare -A nazwa.

       Atrybuty  mogą  być  podane  do  zmiennej  tablicy przy użyciu declare i readonly. Każdy z
       atrybutów stosowany jest do wszystkich elementów tablicy.

       Przypisania  do  tablic  wykonywane   są   przy   pomocy   przypisań   złożonych   postaci
       nazwa=(wartość1   ...   wartośćn),  gdzie  każda  wartość  ma  postać  [wskaźnik]=łańcuch.
       Przypisania tablic indeksowanych nie  wymagają  niczego  oprócz  łańcucha.  Jeżeli  podano
       opcjonalne  nawiasy i wskaźnik, to wartość jest przypisywana wskazanemu elementowi tablicy
       indeksowanej; w przeciwnym wypadku wartość przypisywana jest elementowi o indeksie o jeden
       większym od ostatniego elementu z przypisaną wartością. Indeks jest liczony od zera.

       Przy przypisywaniu do tablicy asocjacyjnej konieczne jest podanie wskaźnika.

       Składnia  ta jest akceptowana także przy poleceniu wbudowanym declare. Pojedyncze elementy
       tablicy można przypisać za pomocą składni  nazwa[wskaźnik]=wartość  wprowadzonej  powyżej.
       Jeśli  wskaźnik  da  po  interpretacji  liczbę  mniejszą  od  zera,  to  jest używany jako
       przesunięcie od maksymalnego indeksu tablicy plus jeden (wskaźnik -1 odnosi  się  więc  do
       ostatniego elementu tablicy).

       Do  elementu tablicy można odwoływać się używając ${nazwa[wskaźnik]}. Nawiasy są wymagane,
       by uniknąć konfliktów z rozwijaniem nazw plików.  Jeśli  wskaźnikiem  jest  @  lub  *,  to
       powyższe słowo interpretowane jest jako wszystkie elementy nazwy.  Wskaźniki te różnią się
       tylko wtedy, gdy słowo pojawia się w cudzysłowach.  Jeśli słowo  ujęto  w  cudzysłowy,  to
       ${nazwa[*]}  interpretowane  jest  jako  pojedyncze  słowo o wartości wszystkich elementów
       tablicy  rozdzielonych  pierwszym  znakiem  zmiennej  specjalnej  IFS,   zaś   ${nazwa[@]}
       interpretuje  każdy  z  elementów  nazwa  jako  odrębne  słowo.  Jeśli brak jest elementów
       tablicy, to ${nazwa[@]} interpretowane  jest  jako  nic.  Jeśli  wewnątrz  słowa  zachodzi
       interpretacja  (ujęta  w  cudzysłowy), to pierwszy zinterpretowany parametr jest łączony z
       początkiem oryginalnego słowa, a interpretacja ostatniego parametru jest łączona z  końcem
       oryginalnego słowa. Jest to zachowanie analogiczne do interpretacji parametrów specjalnych
       * i @ (zobacz powyżej Parametry specjalne).  ${#nazwa[wskaźnik]} interpretowane jest  jako
       długość  ${nazwa[wskaźnik]}.  Jeśli wskaźnikiem jest * lub @, to interpretacją jest liczba
       elementów w tablicy. Jeśli wskaźnik da po interpretacji liczbę mniejszą od zera,  to  jest
       używany  jako  przesunięcie od maksymalnego indeksu tablicy plus jeden (wskaźnik -1 odnosi
       się więc do ostatniego elementu tablicy).

       Odwoływanie się do zmiennej tablicowej bez podania wskaźnika jest równoważne odwołaniu  do
       elementu  numer zero. Każde odwołanie do zmiennej przy podaniu prawidłowego wskaźnika jest
       poprawne; bash utworzy tablicę jeśli będzie to konieczne.

       Zmienna tablicowa jest ustawiona, jeśli do wskaźnika  przypisano  wartość.  Łańcuch  pusty
       jest poprawną wartością.

       Można  pozyskać  zarówno  Klucze  (wskaźniki)  tablicy  jak  i  wartości.  ${!nazwa[@]}  i
       ${!nazwa[*]} są interpretowane jako wskaźniki przypisane do zmiennej nazwa tablicy. expand
       to  the  indices  assigned in array variable name. Gdy zastosowany jest cudzysłów, powłoka
       zachowuje się podobnie jak w przypadku  interpretacji  specjalnych  parametrów  @  i  *  w
       cudzysłowach.

       Do  niszczenia  tablic  służy  wbudowane  polecenie  unset.  unset nazwa[wskaźnik] niszczy
       element tablicy o indeksie wskaźnik. Ujemne wskaźniki tablic indeksowany są interpretowane
       zgodnie  z  opisem  powyżej.  Konieczne  jest  zachowanie  wzmożonej  uwagi,  aby zapobiec
       niechcianym skutkom rozwijania nazw  plików.  Polecenie  unset  nazwa,  gdzie  nazwa  jest
       tablicą, lub unset nazwa[wskaźnik], gdzie wskaźnikiem jest * lub @, usuwa całą tablicę.

       Każde  z  wbudowanych  declare,  local  i readonly akceptuje opcję -a do określania tablic
       indeksowanych i opcję -A do określania tablic asocjacyjnych. Jeśli podano obie  opcje,  to
       pierwszeństwo ma -A. Polecenie read akceptuje opcję -a do przypisywania tablicy listy słów
       przeczytanych ze standardowego wejścia.  set i declare wyświetlają  wartości  tablicowe  w
       sposób umożliwiający ponowne ich użycie w przypisaniach.

INTERPRETACJA

       Interpretacja  wykonywana  jest  na  wierszu  poleceń po jego podziale na słowa.  Istnieje
       siedem rodzajów wykonywanych  interpretacji:  interpretacja  nawiasów  (brace  expansion),
       interpretacja  tyld  (tilde  expansion), podstawianie parametrów i interpretacja zmiennych
       (parameter and variable expansion), podstawienie wyników poleceń  (command  substitution),
       interpretacja  wyrażeń  arytmetycznych  (arithmetic  expansion),  podział  na  słowa (word
       splitting)  i rozwinięcie nazw plików (pathname expansion).

       Kolejność  interpretacji:  interpretacja  nawiasów,  interpretacja   tyld,   interpretacja
       parametrów  i  zmiennych,  interpretacja  wyrażeń  arytmetycznych  i  podstawianie wyników
       poleceń (wykonywane od lewej do prawej), podział na słowa i rozwijanie nazw ścieżek.

       Na  systemach  potrafiących  to  obsłużyć,  istnieje  dodatkowa  dostępna   interpretacja:
       podstawienie  wyników  procesów (process substitution). Jest to przeprowadzane w tym samym
       czasie, jak  interpretacja  tyld,  parametrów,  zmiennych  i  wyrażeń arytmetycznych  oraz
       poleceń.

       Po  przeprowadzeniu  tych  interpretacji  znaki  cytowania  obecne  w pierwotnym słowie są
       usuwane, chyba że same zostały zacytowane (usunięcie cytowań).

       Tylko interpretacja nawiasów, dzielenie na słowa i rozwinięcie nazw  plików  mogą  zmienić
       liczbę słów interpretowanego wyrażenia; pozostałe interpretacje rozwijają pojedyncze słowo
       w pojedyncze słowo.  Jedynymi wyjątkami są interpretacje "$@" i  "${nazwa[@]}"  wyjaśnione
       powyżej (zobacz PARAMETRY).

   Interpretacja nawiasów
       Interpretacja nawiasów jest mechanizmem, przez który mogą być generowane dowolne łańcuchy.
       Mechanizm ten przypomina rozwinięcia nazw plików, ale generowane nazwy  plików  nie  muszą
       określać  plików  istniejących. Wzorce, mające podlegać interpretacji nawiasów mają postać
       opcjonalnej preambuły,  po  której  występują  serie  separowanych  przecinkami  łańcuchów
       pomiędzy  parą  nawiasów klamrowych, po których następuje opcjonalny dopisek (postscript).
       Preambuła stanowi przedrostek dla każdego z łańcuchów zawartych  w  nawiasach,  a  dopisek
       dodawany jest do każdego łańcucha wynikowego, przy interpretacji od lewej do prawej.

       Interpretacja  nawiasów  może  być zagnieżdżana. Wyniki każdego zinterpretowanego łańcucha
       nie są sortowane; zachowywana jest kolejność od lewej do prawej.  Na  przykład,  a{d,c,b}e
       interpretowane jest jako "ade ace abe".

       Sekwencja  wyrażeń  przyjmuje  postać  {x..y[..krok]},  gdzie  x  i  y  są  albo  liczbami
       całkowitymi, albo pojedynczymi znakami, a  opcjonalny  krok  jest  liczbą  całkowitą.  Gdy
       podane są liczby całkowite, to wyrażenie jest rozwijane do wszystkich liczb pomiędzy x i y
       (włącznie). Podane liczby mogą być  poprzedzone  0,  które  wymusza  identyczną  szerokość
       każdej  z  wynikowych  liczb.  Gdy x lub y zaczynają się zerem, to powłoka próbuje wymusić
       utworzenie liczb zawierających tę samą liczbę cyfr,  uzupełniając  je  zerami  tam,  gdzie
       zachodzi  taka  potrzeba. Gdy podano znaki, wyrażenie jest rozwijane do wszystkich znaków,
       znajdujących się leksykalnie (w domyślnych locale C) pomiędzy x  a  y  (włącznie).  Proszę
       odnotować,  że  x i y muszą być tego samego typu. Gdy podano krok, to jest on używany jako
       różnica pomiędzy poszczególnymi wynikami. W zależności  od  podanych  wartości,  domyślnym
       krokiem jest 1 lub -1.

       Interpretacja  nawiasów  wykonywana  jest  przed innymi rodzajami interpretacji, a znaki o
       specjalnym znaczeniu dla  innych  interpretacji  są  zachowywane  w  wyniku.  Jest  ściśle
       tekstowa. Bash nie stosuje żadnej interpretacji składniowej do kontekstu interpretacji czy
       tekstu pomiędzy nawiasami.

       Poprawnie zbudowana interpretacja nawiasów musi zawierać niecytowany nawias otwierający  i
       zamykający i co najmniej jeden niecytowany przecinek.  Wszelkie niepoprawnie skonstruowane
       interpretacje nawiasów są pozostawiane bez zmian.  {  lub  ,  można  cytować  przy  pomocy
       odwrotnego ukośnika, co chroni je przed przyjmowaniem za część wyrażenia nawiasowego.  Dla
       uniknięcia konfliktu z interpretacją parametrów,  łańcuch  ${  nie  jest  traktowany  jako
       spełniający warunki interpretacji nawiasów.

       Typowym  zastosowaniem tej konstrukcji jest skrót, wtedy gdy wspólny przedrostek łańcuchów
       do utworzenia jest dłuższy niż w powyżej podanym przykładzie, np.:

              mkdir /usr/local/src/bash/{old,new,dist,bugs}
       lub
              chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}

       Interpretacja nawiasów wprowadza niewielką niezgodność z historycznymi  wersjami  sh.   sh
       nie  traktuje  nawiasów  otwierających i zamykających w specjalny sposób gdy pojawiają się
       one jako część słowa, i zachowuje je w wyniku.  W bash konsekwencją interpretacji nawiasów
       jest  usuwanie  nawiasów  ze  słów.   Na  przykład, słowo wprowadzone do sh jako plik{1,2}
       pojawi się w identycznej postaci na wyjściu. To samo słowo  po  interpretacji  przez  bash
       daje  plik1 plik2.  Jeżeli pożądana jest ścisła zgodność z sh, uruchom bash z opcją +B lub
       wyłącz interpretację nawiasów  przy  pomocy  opcji  +B  polecenia  set  (zobacz  WBUDOWANE
       POLECENIA POWŁOKI poniżej).

   Interpretacja tyldy
       Jeżeli  słowo  rozpoczyna  się  niecytowanym  znakiem  tyldy  (`~'),  to  wszystkie  znaki
       poprzedzające pierwszy niecytowany ukośnik (lub wszystkie  znaki,  gdy  nie  ma  ukośnika)
       uważane  są  za  przedrostek  tyldy  (tilde-prefix).  Jeżeli żaden ze znaków w przedrostku
       tyldy nie jest cytowany, to jego znaki następujące  po  znaku  tyldy  traktowane  są  jako
       możliwa  nazwa logowania (login name).  Jeśli ta nazwa logowania jest łańcuchem pustym, to
       tylda zastępowana jest wartością parametru powłoki HOME.  Jeżeli HOME nie jest  ustawione,
       to  podstawiany  jest  za  nie  katalog  domowy  użytkownika  uruchamiającego  powłokę.  W
       przeciwnym wypadku, przedrostek tyldy zastępowany jest katalogiem  domowym  skojarzonym  z
       określoną nazwą logowania.

       Jeśli przedrostkiem tyldy jest `~+', to jest on zastępowany wartością zmiennej PWDpowłoki.
       Jeśli przedrostkiem tyldy jest `~-', to jest on  zastępowany  wartością  zmiennej  powłoki
       OLDPWD,  jeśli  jest  ona  ustawiona.   Jeżeli  występujące w przedrostku po tyldzie znaki
       składają się z liczby N, opcjonalnie poprzedzonej przez `+' lub `-', to przedrostek  tyldy
       zastępowany  jest  odpowiednim  elementem stosu katalogów, jaki zostałby wyświetlony przez
       wbudowane dirs, wywołane z przedrostkiem tyldy  jako  argumentem.   Jeżeli  w  przedrostku
       tyldy  znaki występujące po tyldzie składają się z liczby bez początkowego `+' lub `-', to
       przyjmowane jest `+'.

       Jeśli nazwa logowania jest nieprawidłowa lub interpretacja  tyldy  nie  powiodła  się,  to
       słowo z tyldą pozostaje niezmienione.

       Każde z przypisań do zmiennej sprawdzane jest na obecność niecytowanych przedrostków tyldy
       występujących bezpośrednio po : lub =.  W tych przypadkach również  jest  wykonywana  jest
       interpretacja  tyldy.   Na  skutek  tego,  można posługiwać się nazwami plików z tyldami w
       przypisaniach do PATH, MAILPATH i CDPATH, a powłoka przypisze zinterpretowaną wartość.

   Podstawianie parametrów
       Znak `$' wprowadza podstawianie parametrów, podstawianie wyników poleceń  i  interpretację
       wyrażeń  arytmetycznych.  Podlegająca  interpretacji  nazwa  parametru lub symbol mogą być
       ujęte w nawiasy klamrowe, które  są  opcjonalne,  ale  służą  do  ochrony  interpretowanej
       zmiennej  przed  znakami,  jakie  występują  bezpośrednio  po niej, a które mogłyby zostać
       zinterpretowane jako część nazwy.

       Gdy używane są nawiasy, pasującym nawiasem kończącym  jest  pierwszy  `}',  nie  chroniony
       przez odwrotny ukośnik, nie znajdujący się wewnątrz cytowanego łańcucha ani nie osadzony w
       wyrażeniu arytmetycznym, podstawieniu wyniku polecenia czy podstawieniu parametru.

       ${parametr}
              Podstawiana  jest  wartość  parametru.  Nawiasy  wymagane  są  gdy  parametr   jest
              parametrem  pozycyjnym  o więcej niż jednej cyfrze, lub gdy po parametrze występuje
              znak, który nie powinien być interpretowany jako część jego  nazwy.  Parametr  jest
              parametrem   powłoki  opisanych  powyżej  PARAMETRY  lub  odniesieniem  do  tablicy
              (Tablice).

       Jeżeli pierwszym znakiem parametru jest wykrzyknik i parametr nie jest nazwą referencyjną,
       to  rozpoczyna  on poziom zagnieżdżenia zmiennej pośredniej.  Bash posługuje się wartością
       zmiennej utworzonej z reszty parametru jako nazwą  zmiennej;  zmienna  ta  jest  następnie
       interpretowana  a  w  dalszym podstawianiu używana jest otrzymana wartość zamiast wartości
       samego parametru. Znane jest to jako interpretacja pośrednia (indirect  expansion).  Jeśli
       parametrem  jest  nazwa  referencyjna,  to  jest  to interpretowane jako nazwa zmiennej do
       której odnosi się parametr, zamiast dokonywania pełnej interpretacji pośredniej. Wyjątkami
       są   interpretacja   ${!przedrostek*}  i  ${!nazwa[@]}  opisane  poniżej.  Aby  wprowadzić
       interpretację  pośrednią,  wykrzyknik  musi  występować  bezpośrednio  po  lewym  nawiasie
       klamrowym.

       W  każdym  z  poniższych  przypadków,  słowo  podlega  interpretacji  tyldy,  podstawianiu
       parametrów, podstawianiu wyników poleceń i interpretacji wyrażeń arytmetycznych.

       Gdy nie przeprowadza interpretacji podłańcuchów, za pomocą opisanych poniżej  formuł  (np.
       :-)  bash  sprawdza  czy  parametr  nie  jest pusty lub nieustawiony. Pominięcie dwukropka
       skutkuje sprawdzeniem jedynie tego, czy parametr nie jest nieustawiony.

       ${parametr:-słowo}
              Używa  wartości  domyślnych.  Jeżeli  parametr  jest  nieustawiony  lub  pusty,  to
              podstawiane  jest  zinterpretowane  słowo.   W  przeciwnym  razie, podstawiana jest
              wartość parametru.
       ${parametr:=słowo}
              Przypisuje wartości domyślne.  Jeżeli parametr jest nieustawiony lub pusty, to jest
              mu   przypisywane   zinterpretowane  słowo.   Następnie  podstawiana  jest  wartość
              parametru.  Nie można w ten sposób przypisywać wartości parametrom  pozycyjnym  ani
              parametrom specjalnym.
       ${parametr:?słowo}
              Wyświetla błąd jeśli pusty lub nieustawiony.  Jeżeli parametr jest nieustawiony lub
              pusty, to na standardowe wyjście błędów zapisywane jest zinterpretowane słowo  (lub
              komunikat  o takim wyniku, jeśli brak słowa).  Jeśli powłoka nie jest interaktywna,
              to kończy pracę.  W przeciwnym wypadku, podstawiana jest wartość parametru.
       ${parametr:+słowo}
              Używa wartości alternatywnej.  Jeżeli parametr jest nieustawiony lub pusty, to  nic
              nie jest podstawiane, w przeciwnym razie podstawiane jest zinterpretowane słowo.
       ${parametr:przesunięcie}
       ${parametr:przesunięcie:długość}
              Interpretacja  podłańcuchów.  Interpretuje  do  długości znaków wartości parametru,
              poczynając od znaku określonego przesunięciem. Jeśli  parametrem  jest  @,  tablica
              indeksowana ze wskaźnikiem @ lub * lub nazwa tablicy asocjacyjnej, wynik różni się,
              zgodnie z poniższym opisem. Jeśli nie poda się długości, to interpretuje podłańcuch
              wartości parametru poczynając od znaku określonego przesunięciem i kończąc z końcem
              wartości. Długość i przesunięcie są wyrażeniami  arytmetycznymi  (zob.   OBLICZANIE
              WYRAŻEŃ ARYTMETYCZNYCH poniżej).

              Jeśli  przesunięcie wyniesie mniej niż zero, wartość jest używana jako przesunięcie
              w znakach od końca wartości parametru. Jeśli długość wyniesie mniej niż zero,  jest
              interpretowana  jako przesunięcie w znakach od końca wartości parametru, a nie jako
              liczba znaków, a interpretacja będzie dotyczyć znaków pomiędzy przesunięciem i  tym
              wynikiem.  Proszę zauważyć, że ujemne przesunięcie musi być oddzielone od dwukropka
              przynajmniej jedną spacją aby zapobiec pomyleniu z wyrażeniem :-.

              Jeśli parametrem jest @, to wynikiem jest długość parametrów pozycyjnych poczynając
              od  przesunięcia.  Ujemne  przesunięcie  jest  liczone w odniesieniu do parametru o
              jeden  więcej  niż  największy  parametr  pozycyjny,  więc  przesunięcie  -1   jest
              interpretowane  jako  ostatni  parametr pozycyjny. Jeśli długość będzie mniejsza od
              zera wystąpi błąd interpretacji.

              Jeśli parametr jest nazwą tablicy indeksowanej z wskaźnikiem @ lub *,  to  wynikiem
              jest  długość  elementów  tablicy  poczynając  od  ${parametr[przesunięcie]}. Jeśli
              wskaźnik da po  interpretacji  liczbę  mniejszą  od  zera,  to  jest  używany  jako
              przesunięcie  od  maksymalnego  indeksu  tablicy  plus  jeden. Jeśli długość będzie
              mniejsza od zera wystąpi błąd interpretacji.

              Interpretacja  podłańcucha  zastosowana  do  tablicy  asocjacyjnej  da   w   wyniku
              niezdefiniowany rezultat.

              Indeksowanie  podłańcuchów  zaczyna  się  od  zera,  chyba  że używane są parametry
              pozycyjne, wówczas indeksy liczy się domyślnie od 1. Jeśli przesunięcie wyniesie  0
              i użyje się parametrów pozycyjnych, do listy włącza się na początku $0.

       ${!przedrostek*}
       ${!przedrostek@}
              Nazywa pasujący przedrostek. Rozwija się w listę nazw tych zmiennych, których nazwy
              rozpoczynają się od przedrostka, rozdzielonych od siebie pierwszym znakiem zmiennej
              specjalnej  IFS.  Jeśli używane jest @, a interpretacja jest ujęta w cudzysłowy, to
              każda nazwa zmiennej jest interpretowana jako oddzielne słowo.

       ${!nazwa[@]}
       ${!nazwa[*]}
              Lista kluczy z tablicy. Jeśli nazwa jest zmienną tablicową, jest rozwijana do listy
              wskaźników  (kluczy)  tablicowych  przypisanych  do  nazwy.  Jeśli  nazwa  nie jest
              tablicą, interpretowana jest do 0, jeśli nazwa jest ustawiona lub pozostaje pusta w
              przeciwnym  wypadku.  Gdy  używane jest !, a interpretacja jest ujęta w cudzysłowy,
              każdy klucz jest rozwijany do oddzielnego słowa.

       ${#parametr}
              Długość parametru. Podstawiana jest długość, w znakach, wartości parametru.  Jeżeli
              parametrem  jest  *  lub @, wartość podstawiana jest liczbą parametrów pozycyjnych.
              Jeżeli  parametr  jest  nazwą  tablicy  o  indeksowanej  przez  *  lub  @,  wartość
              podstawiana jest liczbą elementów tablicy.

       ${parametr#słowo}
       ${parametr##słowo}
              Usuwanie  pasującego wzorca przedrostka. Słowo jest interpretowane tworząc wzorzec,
              tak samo jak przy  rozwijaniu  nazw  plików.  Jeżeli  wzorzec  pasuje  do  początku
              wartości   parametru,   to  wynikiem  interpretacji  jest  zinterpretowana  wartość
              parametru z usuniętym  najkrótszym  (przypadek  ,,#”)  lub  najdłuższym  (przypadek
              ,,##”)  pasującym  wzorcem.   Jeżeli parametrem jest @ lub *, to operacja usunięcia
              wzorca stosowana jest do każdego  po  kolei  parametru  pozycyjnego,  zaś  wynikiem
              interpretacji   jest   powstała  lista.   Jeśli  parametr  jest  zmienną  tablicową
              indeksowaną przez @ lub *, to operacja usuwania wzorca jest przeprowadzana po kolei
              na każdym elemencie tablicy, zaś wynikiem interpretacji jest powstała lista.

       ${parametr%słowo}
       ${parametr%%słowo}
              Usuwanie  pasującego  wzorca przyrostka. Słowo jest interpretowane tworząc wzorzec,
              tak samo jak przy rozwijaniu nazw plików. Jeżeli wzorzec pasuje do końcowej  części
              zinterpretowanego  parametru,  wynikiem  interpretacji jest zinterpretowana wartość
              parametru z usuniętym  najkrótszym  (przypadek  ,,%”)  lub  najdłuższym  (przypadek
              ,,%%”)  pasującym  wzorcem.  Jeżeli  parametrem jest @ lub *, to operacja usunięcia
              wzorca stosowana jest do każdego  po  kolei  parametru  pozycyjnego,  zaś  wynikiem
              interpretacji   jest    powstała  lista.  Jeśli  parametr  jest  zmienną  tablicową
              indeksowaną przez @ lub *, operacja usuwania wzorca jest przeprowadzana po kolei na
              każdym elemencie tablicy, zaś wynikiem interpretacji jest powstała lista.

       ${parametr/wzorzec/łańcuch}
              Zastępowanie  wzorca.   Wzorzec  jest  interpretowany w identyczny sposób jak to ma
              miejsce  przy  rozwijaniu  nazw  plików.  Parametr  jest  rozwijany,  a  najdłuższe
              dopasowanie  wzorca  do  jego  wartości  jest  zastępowane łańcuchem. Jeśli wzorzec
              rozpoczyna się  /,  to  wszystkie  dopasowania  wzorca  są  zastępowane  łańcuchem.
              Normalnie,  zastępowane  jest  tylko pierwsze dopasowanie. Jeśli wzorzec rozpoczyna
              się #, to musi pasować  do  początku  zinterpretowanej  wartości  parametru.  Jeśli
              zaczyna  się  %,  musi  natomiast pasować do końca tej wartości. Jeśli łańcuch jest
              pusty, wszystkie dopasowania wzorca są usuwane, a początkowy / wzorca  może  zostać
              pominięty.  Jeśli  włączona  jest  opcja  powłoki  nocasematch, to dopasowanie jest
              wykonywane bez uwzględniania wielkości liter. Jeśli parametrem jest  @  lub  *,  to
              operacja  podstawiania jest przeprowadzana na każdym parametrze pozycyjnym z kolei,
              a zinterpretowanym wynikiem  jest  powstała  lista.  Jeśli  parametr  jest  zmienną
              tablicową,  w  której  jako  indeks  podano  @ lub *, to operacja podstawiania jest
              przeprowadzana na każdym jej wpisie po  kolei,  a  zinterpretowanym  wynikiem  jest
              powstała lista.

       ${parametr^wzorzec}
       ${parametr^^wzorzec}
       ${parametr,wzorzec}
       ${parametr,,wzorzec}
              Modyfikacja  wielkości znaków. Ta interpretacja modyfikuje wielkość zawartych liter
              zgodnie z parametrem. Wzorzec jest interpretowany  w  taki  sposób,  jak  czyni  to
              rozwijanie  nazw  plików.  Każdy  znak  w  interpretowanej  wartości parametru jest
              sprawdzany ze wzorcem i jeśli do niego  pasuje,  wielkość  litery  jest  zmieniana.
              Wzorzec  nie  powinien  dopasowywać więcej niż jednego znaku. Operator ^ konwertuje
              małe litery pasujące do wzorca na wielkie, operator , działa  odwrotnie.  ^^  i  ,,
              konwertują  każdy  dopasowany  znak  interpretowanej  wartości,  natomiast  ^  i  ,
              konwertują jedynie jej pierwszy znak. Jeśli nie podano wzorca, to przyjmuje się  za
              niego  ?,  co powoduje dopasowanie każdego znaku. Jeśli parametrem jest @ lub *, to
              operacja podstawiania stosowana jest do każdego po kolei parametru pozycyjnego, zaś
              wynikiem  interpretacji jest powstała lista.  Jeśli parametr jest zmienną tablicową
              indeksowaną przez @ lub *, operacja podstawiania jest przeprowadzana  po  kolei  na
              każdym elemencie tablicy, zaś wynikiem interpretacji jest powstała lista.

       ${parametr@operator}
              Przekształcenie  parametrów.  Ta  interpretacja jest albo przekształceniem wartości
              parametrów,  albo  informacji  o  samych  parametrach,  w  zależności  od  wartości
              operatora. Każdy operator jest pojedynczą literą:

              Q      Interpretacją jest  łańcuch  będący wartością parametru cytowany w formacie,
                     jaki może być ponownie wykorzystany jako wejście powłoki.
              E      Interpretacją jest łańcuch będący wartością parametru z sekwencjami ucieczki
                     z ukośnikiem cytowanych za pomocą mechanizmu $'...'.
              P      Interpretacją jest  łańcuch będący wartością parametru taką, jaką byłby jako
                     łańcuch zachęty (zob. poniżej ZACHĘTA).
              A      Interpretacją jest łańcuch w  postaci  z  jaką  instrukcja  przypisania  lub
                     polecenie   declare   przy  interpretacji  odtworzyła  by  parametr  z  jego
                     atrybutami i wartością.
              a      Interpretacją jest łańcuch składający się z wartości  flag  reprezentujących
                     atrybuty parametru.

              Jeżeli  parametrem  jest  @  lub  *, to operacja stosowana jest do każdego po kolei
              parametru pozycyjnego,  zaś  wynikiem  interpretacji  jest  powstała  lista.  Jeśli
              parametr  jest zmienną tablicową indeksowaną przez @ lub *, to operacja modyfikacji
              wielkości znaków jest przeprowadzana po kolei  na  każdym  elemencie  tablicy,  zaś
              wynikiem interpretacji jest powstała lista.

              Na  wyniku interpretacji jest przeprowadzany podział na słowa oraz rozwinięcie nazw
              plików zgodnie z opisem poniżej.

   Podstawianie wyników poleceń
       Podstawianie  wyników  poleceń  (command  substitution)  pozwala  na  zastępowanie   nazwy
       polecenia wyjściem (wynikiem) z jego działania.  Posiada dwie postaci:

              $(polecenie)
       lub
              `polecenie`

       Bash  wykonuje  interpretację  wykonując  polecenie  w  środowisku podpowłoki i zastępując
       podstawiane polecenie  jego  utworzonym  standardowym  wyjściem,  z  usuniętymi  końcowymi
       znakami  nowej  linii.  Zawarte wewnątrz wyniku znaki nowej linii nie są usuwane, ale mogą
       być usunięte podczas podziału na słowa.  Podstawienie wyniku polecenia $(cat  plik)  można
       zastąpić równoważnym, ale szybszym $(< plik).

       Gdy  używane  jest  podstawianie w starym stylu, z użyciem odwrotnych apostrofów, odwrotny
       ukośnik zachowuje swe znaczenie dosłowne, z wyjątkiem  przypadków,  gdy  jest  poprzedzony
       przez  $,  `  lub  \.  Pierwszy odwrotny apostrof (`) nie poprzedzony odwrotnym ukośnikiem
       kończy podstawianie wyniku polecenia.  Podczas  posługiwania  się  postacią  $(polecenie),
       polecenie tworzą wszystkie znaki pomiędzy nawiasami; żaden nie jest traktowany specjalnie.

       Podstawianie  wyników  poleceń  może  być  zagnieżdżane.  W  celu  zagnieżdżenia postaci z
       odwrotnymi apostrofami  zabezpiecz  wewnętrzne  przed  interpretacją  używając  odwrotnych
       ukośników.

       Jeżeli   podstawianie   pojawia   się  wewnątrz  cudzysłowów,  to  na  wynikach  nie  jest
       przeprowadzany podział na słowa ani rozwinięcie nazw plików.

   Interpretacja wyrażeń arytmetycznych
       Interpretacja wyrażeń  arytmetycznych  pozwala  na  obliczanie  wyrażeń  arytmetycznych  i
       podstawianie wyniku. Format interpretacji arytmetycznej:

              $((wyrażenie))

       Stary  format  $[wyrażenie]  jest  przestarzały  i zostanie usunięty w przyszłych wersjach
       basha.

       wyrażenie traktowane jest tak, jakby było  ujęte  w  cudzysłowy,  ale  cudzysłów  wewnątrz
       nawiasów   nie  jest  traktowany  specjalnie.   Wszystkie  tokeny  w  wyrażeniu  podlegają
       interpretacji parametrów i zmiennych, podstawianiu wyników poleceń i usuwaniu cudzysłowów.
       Wynik  jest  traktowany  jako wyrażenie arytmetyczne do obliczenia. Wyrażenia arytmetyczne
       mogą być zagnieżdżane.

       Interpretacja przeprowadzana jest zgodnie z zasadami podanymi poniżej w sekcji  OBLICZENIA
       ARYTMETYCZNE.    Jeżeli   wyrażenie   jest   nieprawidłowe,   bash  wypisuje  komunikat  o
       niepowodzeniu i nie występuje żadne podstawienie.

   Podstawianie wyników procesów (Process substitution)
       Podstawianie wyników procesów pozwala na odnoszenie się do wejścia lub wyjścia procesu  za
       pomocą nazwy  pliku. Przybiera ono postać <(lista) lub >(lista).  Proces lista uruchamiany
       asynchronicznie, a jego  wejście  i  wyjście  pojawia  się  jako  nazwa  pliku.  W  wyniku
       interpretacji  nazwa  tego pliku przesyłana jest jako argument bieżącego polecenia. Jeżeli
       posłużono się postacią >(lista), zapis do pliku będzie stanowić wejście dla listy.  Jeżeli
       posłużono się postacią <(lista), plik przekazany jako argument powinien zostać odczytany w
       celu uzyskania wyjścia listy. Podstawianie wyników procesów jest obsługiwane  w  systemach
       wspierających potoki nazwane (FIFO) lub metodę nazywania otwartych plików /dev/fd.

       Gdy  jest  to  możliwe,  podstawianie  wyników  procesu  wykonywane  jest  równocześnie  z
       interpretacją parametrów  i  zmiennych,  podstawianiem  wyników  poleceń  i  interpretacją
       wyrażeń arytmetycznych.

   Podział na słowa
       Powłoka  przeszukuje wyniki interpretacji parametrów, podstawiania poleceń i interpretacji
       wyrażeń  arytmetycznych,  które  nie  pojawiają   się   wewnątrz   cudzysłowów,   w   celu
       przeprowadzenia podziału na słowa.

       Powłoka   traktuje  każdy  znak  IFS  jak  separator  i  dzieli  na  słowa  wyniki  innych
       interpretacji, używając ich jako separatorów pól. Jeżeli IFS nie jest ustawione  lub  jego
       wartością   jest   dokładnie  <spacja><tab><nowalinia>,  wartość  domyślna,  to  sekwencje
       składające się ze <spacji>, <tabulatora>  i  <nowejlinii>  na  początku  i  końcu  wyników
       poprzednich  interpretacji  są  ignorowane, a do podziału na słowa służy dowolna sekwencja
       znaków IFS, jeżeli nie znajduje się na początku lub końcu.   Jeżeli  IFS  posiada  wartość
       inną  niż  domyślna, to sekwencje białych znaków spacji i tabulacji i znaku nowego wiersza
       są ignorowane na początku i końcu słowa, dopóki biały znak występuje w wartości IFS (biały
       znak  IFS).   Inne  znaki  w  IFS  nie  będące  białymi  znakami  IFS, łącznie z dowolnymi
       przyległymi białymi znakami IFS, ograniczają pole.   Sekwencja  białych  znaków  IFS  jest
       również  traktowana  jako  ogranicznik.  Jeśli IFS jest łańcuchem pustym, to nie występuje
       podział na słowa.

       Jawnie puste argumenty ("" lub '') są pozostawiane i przekazywane do poleceń jako łańcuchy
       puste.  Niecytowane  argumenty  puste niejawnie, wynikające z interpretacji parametrów nie
       posiadających wartości, są usuwane.   Jeśli  parametr  bez  wartości  interpretowany  jest
       wewnątrz cudzysłowów, to wynikiem jest argument pusty i jest on zachowywany i przekazywany
       do poleceń jako łańcuchy puste. Gdy cytowany pusty argument pojawi się jako  część  słowa,
       którego  interpretacja jest niepusta, pusty argument jest usuwany tj. słowo -d'' staje się
       -d po przeprowadzeniu podziału na słowa i usunięciu pustych argumentów.

       Zauważ, że jeśli nie występuje interpretacja, to nie jest również wykonywany podział.

   Rozwijanie nazw plików (Pathname Expansion)
       Po podziale na słowa, jeżeli nie ustawiona została  opcja  -f,  przegląda  każde  słowo  w
       poszukiwaniu  znaków  *,  ? i [.  Jeśli pojawia się jeden z nich, to słowo uważane jest za
       wzorzec i zastępowane jest posortowaną  alfabetycznie  listą  nazw  plików  pasujących  do
       wzorca  (zob.   Dopasowanie wzorca. Jeżeli nie znaleziono pasujących nazw a wyłączona jest
       opcja nullglob powłoki, słowo pozostawiane jest bez zmian. Jeżeli nullglob jest  włączone,
       a  nie  znaleziono  dopasowań,  to słowo jest usuwane. Jeśli ustawiona jest opcja failglob
       powłoki i nie znaleziono dopasowań, to wyświetlany jest komunikat o błędzie,  a  polecenie
       nie  jest  wykonywane.  Jeżeli  włączona  jest  opcja nocaseglob powłoki, to dopasowywanie
       wzorca wykonywane jest bez zwracania uwagi na wielkość liter. Proszę zwrócić uwagę, ze gdy
       użyte  są  wyrażenia  zakresowe,  takie  jak  [a-z]  (patrz  niżej),  mogą  również zostać
       uwzględnione litery innej  wielkości,  w  zależności  od  ustawienia  LC_COLLATE.  Gdy  do
       rozwinięcia  nazw  plików używa się wzorca, to znak "." na początku nazwy lub bezpośrednio
       po ukośniku musi zostać dopasowany dosłownie, chyba że ustawiono  opcję  dotglob  powłoki.
       Podczas  dopasowywania  nazwy pliku znak ukośnika musi zawsze zostać dopasowany dosłownie.
       W pozostałych przypadkach, kropka ".  nie jest traktowana specjalnie.  Zobacz poniżej opis
       shopt  w  sekcji  WBUDOWANE  POLECENIA  POWŁOKI,  gdzie znajdziesz omówienie opcji powłoki
       nocaseglob, nullglob, failglob i dotglob.

       Do ograniczenia zestawu nazw plików pasujących do wzorca można wykorzystać zmienną powłoki
       GLOBIGNORE.   Jeżeli  GLOBIGNORE  jest  ustawione, każda z pasujących nazw plików pasująca
       również do jednego ze wzorców w GLOBIGNORE jest usuwana z listy dopasowań. Jeśli ustawiona
       jest  opcja nocaseglob, to dopasowanie do wzorców w GLOBIGNORE jest dokonywane bez względu
       na wielkość znaków. Nazwy plików "." i ".." są zawsze  ignorowane,  nawet  gdy  GLOBIGNORE
       jest  ustawione. Jednakże, ustawienie GLOBIGNORE skutkuje włączeniem opcji dotglob, tak że
       będą dopasowywane wszystkie inne nazwy  plików  rozpoczynające  się  od  kropki.   W  celu
       uzyskania  starego zachowania, ignorującego nazwy zaczynające się ".", jednym ze wzorców w
       GLOBIGNORE należy zrobić ".*". Opcja dotglob jest wyłączana, gdy kasowane jest GLOBIGNORE.
       Dopasowanie wzorców honoruje ustawienia opcji powłoki extglob.

       Dopasowanie wzorca

       Każdy  znak  pojawiający  się  we  wzorcu,  różny  od  specjalnych znaków wzorca opisanych
       poniżej, dopasowuje sam siebie. Znak NUL nie może wystąpić  we  wzorcu.  Odwrotny  ukośnik
       cytuje  następujący  po nim znak; sam ukośnik jest pomijany podczas dopasowania. Specjalne
       znaki wzorca muszą być cytowane, jeżeli mają być dopasowane dosłownie.

       Specjalne znaki wzorca mają następujące znaczenie:

              *      Dopasowuje dowolny łańcuch, łącznie z łańcuchem pustym. Jeśli włączona  jest
                     opcja  globstar powłoki, a * jest użyte w kontekście rozwijania nazw plików,
                     to dwa złączone znaki * użyte w pojedynczym wzorcu dopasują wszystkie  pliki
                     wraz  z zerem lub więcej katalogów i podkatalogów. Jeśli po dwóch gwiazdkach
                     * wystąpi ukośnik /, to dopasowane będą wyłącznie katalogi i podkatalogi.
              ?      Dopasowuje dowolny pojedynczy znak.
              [...]  Dopasowuje  jeden  z  ujętych  w  nawiasy  kwadratowe  znaków.  Para  znaków
                     rozdzielona  myślnikiem  opisuje  wyrażenie  zakresu;  dopasowywany jest nim
                     dowolny znak, który przy sortowaniu leksykalnym, z  zastosowaniem  bieżącego
                     ustawienia  locale  i  zestawu  znaków,  wypada  między  tymi dwoma znakami,
                     włącznie z nimi.  Jeżeli pierwszym znakiem występującym po [ jest !  lub  ^,
                     to  dopasowywany  jest  dowolny  znak  nie  zawarty  w nawiasach.  Kolejność
                     sortowania  znaków  w  wyrażeniach  zakresu  określona  jest  przez  bieżące
                     ustawienie   locale  i  wartość  zmiennej  środowiskowej  LC_COLLATE,  jeśli
                     istnieje.  Znak - można dopasować włączając go jako pierwszy lub ostatni  ze
                     znaków  zestawu.   Znak  ]  można  dopasować włączając go jako pierwszy znak
                     zestawu.

                     Wewnątrz [ i ], można podawać klasy  znaków  (character  classes),  używając
                     składni [:klasa:], gdzie klasa jest jedną z poniższych klas zdefiniowanych w
                     standardzie POSIX:
                     alnum alpha ascii blank cntrl digit graph lower print punct space upper word
                     xdigit
                     Klasa  znaków  dopasowuje  dowolny  znak należący do tej klasy. Klasa znaków
                     word dopasowuje litery, cyfry i znak podkreślenia "_".

                     Wewnątrz [ i ], można podać klasę  równoważności,  używając  składni  [=z=],
                     która  dopasowuje wszystkie znaki o tej samej wadze sortowania (zdefiniowaną
                     w bieżącym ustawieniu locale) co znak z.

                     Wewnątrz [ i ], składnia [.symbol.] dopasowuje symbol sortowania  (collating
                     symbol) symbol.

       Jeżeli  przy  pomocy  wbudowanego shopt włączono opcję extglob, to rozpoznawane jest kilka
       rozszerzonych operatorów dopasowania wzorców.   W  poniższym  opisie,  lista-wzorców  jest
       listą  złożoną z jednego lub więcej wzorców rozdzielonych znakiem |.  Wzorce złożone można
       konstruować przy pomocy jednego lub więcej poniższych pod-wzorców:

              ?(lista-wzorców)
                     Dopasowuje zero lub jedno wystąpienie zadanych wzorców
              *(lista-wzorców)
                     Dopasowuje zero lub więcej wystąpień zadanych wzorców
              +(lista-wzorców)
                     Dopasowuje jedno lub więcej wystąpień zadanych wzorców
              @(lista-wzorców)
                     Dopasowuje jeden z zadanych wzorców
              !(lista-wzorców)
                     Dopasowuje cokolwiek prócz jednego z zadanych wzorców

   Usunięcie cytowań
       Po poprzednich interpretacjach, wszystkie niecytowane wystąpienia znaków \, ' i  ",  które
       nie wynikły z jednej z powyższych interpretacji, są usuwane.

PRZEKIEROWANIE

       Przed  wykonaniem  polecenia, jego wejście i wyjście mogą zostać przekierowane przy pomocy
       specjalnej notacji interpretowanej przez powłokę.  Przekierowania  pozwalają  deskryptorom
       plików poleceń na powielanie, otwieranie, zamykanie, tworzenie odniesień do różnych plików
       oraz mogą zmieniać pliki, które odczytuje polecenie i do którego pisze. Przekierowań można
       też używać do modyfikowania deskryptorów plików w środowiska wykonywania bieżącej powłoki.
       Poniższe operatory przekierowania mogą występować  przed  lub  pojawiać  się  gdziekolwiek
       wewnątrz  polecenia prostego lub występować po poleceniu. Przekierowania przetwarzane są w
       kolejności występowania, od lewej do prawej.

       Każde przekierowanie, które może być poprzedzone numerem deskryptora  pliku,  może  być  w
       zamian  poprzedzone słowem zapisanym następująco: {nazwa-zmiennej}. W takim przypadku, dla
       każdego operatora przekierowania, z wyjątkiem >&- i <&-,  powłoka  nada  deskryptor  pliku
       większy  lub równy 10 i przypisze go do nazwy-zmiennej. Jeśli >&- lub <&- jest poprzedzone
       {nazwą-zmiennej}, to wartość nazwy-zmiennej definiuje  deskryptor  pliku  przeznaczony  do
       zamknięcia.

       W  poniższych  opisach,  jeśli  pominięto  deskryptor pliku, a pierwszym znakiem operatora
       przekierowania jest <, przekierowanie dotyczy standardowego wejścia (deskryptor pliku  0).
       Jeżeli   pierwszym   znakiem  operatora  przekierowania  jest  >,  przekierowanie  dotyczy
       standardowego wyjścia (deskryptor pliku 1).

       Słowo następujące do operatorze przekierowania w  poniższych  opisach  podlega,  chyba  że
       podano  inaczej,  interpretacji  nawiasów, interpretacji tyldy, interpretacji parametrów i
       zmiennych, podstawianiu wyników poleceń, interpretacji  wyrażeń  arytmetycznych,  usuwaniu
       cytowań,  rozwijaniu  nazw  plików  i podziałowi na słowa.  Jeśli zinterpretowane zostanie
       jako więcej niż jedno słowo, to bash zgłosi błąd.

       Zauważ, że kolejność przekierowań jest znacząca. Na przykład, polecenie

              ls > dirlist 2>&1

       kieruje zarówno standardowe  wyjście  jak  i  wyjście  diagnostyczne  (stderr)   do  pliku
       dirlist, podczas gdy polecenie

              ls 2>&1 > dirlist

       kieruje   tylko  standardowe  wyjście  do  pliku  dirlist,  gdyż  wyjście  błędów  zostało
       zduplikowane jako standardowe wyjście przed przekierowaniem wyjścia do dirlist.

       Bash  obsługuje  wiele  nazw  plików,  szczególnie  wtedy,  gdy  są   one   używane   przy
       przekierowaniach,  zgodnie  z opisem w poniższej tabeli. Jeśli system operacyjny na którym
       działa bash udostępnia te pliki specjalne, bash skorzysta  z  nich,  jeśli  nie,  to  będą
       wewnętrznie emulowane cechując się opisanym poniżej zachowaniem.

              /dev/fd/fd
                     Jeżeli  fd  jest  poprawną  liczbą całkowitą, to duplikowany jest deskryptor
                     pliku fd.
              /dev/stdin
                     Duplikowany jest deskryptor pliku 0.
              /dev/stdout
                     Duplikowany jest deskryptor pliku 1.
              /dev/stderr
                     Duplikowany jest deskryptor pliku 2.
              /dev/tcp/host/port
                     Jeśli host jest poprawną nazwą hosta lub adresem internetowym, a  port  jest
                     liczbą  całkowitą  określającą numer portu lub nazwą usługi, to bash usiłuje
                     otworzyć połączenie do odpowiedniego gniazda TCP.
              /dev/udp/host/port
                     Jeśli host jest poprawną nazwą hosta lub adresem internetowym, a  port  jest
                     liczbą  całkowitą  określającą numer portu lub nazwą usługi, to bash usiłuje
                     otworzyć połączenie do odpowiedniego gniazda UDP.

       Nieudane otwarcie lub utworzenie pliku powoduje niepowodzenie przekierowania.

       Przekierowania używające deskryptorów plików, większych niż 9 muszą  być  używane  z  dużą
       ostrożnością,  gdyż  mogą  być  w  konflikcie z deskryptorami plików używanymi wewnętrznie
       przez powłokę.

       Proszę zauważyć, że wbudowane polecenie exec może tworzyć przekierowania odnoszące się  do
       bieżącej powłoki.

   Przekierowanie wejścia
       Przekierowanie  wejścia  powoduje  otwarcie  do  odczytu  pliku,  którego  nazwa  wynika z
       interpretacji słowa.  Odczyt będzie wykonywany z deskryptora  pliku  n  lub  standardowego
       wejścia (zerowy deskryptor pliku) jeśli nie podano n.

       Ogólny format przekierowania wejścia:

              [n]<słowo

   Przekierowanie wyjścia
       Przekierowanie  wyjścia  powoduje  otwarcie  do  zapisu  pliku,  którego  nazwa  wynika  z
       interpretacji słowa.  Zapis będzie wykonywany z  deskryptora  pliku  n  lub  standardowego
       wyjścia  (deskryptor pliku 1) jeśli nie podano n.  Jeżeli plik nie istnieje jest tworzony;
       jeżeli istnieje obcinany jest do rozmiaru zerowego.

       Ogólny format przekierowania wyjścia:

              [n]>słowo

       Jeżeli operatorem przekierowania jest >, a została włączona  opcja  noclobber  wbudowanego
       polecenia  set,  to  przekierowanie  nie  powiedzie się jeżeli plik o nazwie wynikającej z
       interpretacji słowa istnieje i jest zwykłym  plikiem.   Jeżeli  operatorem  przekierowania
       jest  >|,  albo  operatorem  jest  > przy niewłączonej opcji noclobber, to wykonywana jest
       próba przekierowania, nawet jeśli plik słowo istnieje.

   Dołączanie przekierowanego wyjścia
       Przekierowanie wyjścia w ten sposób powoduje, że plik o nazwie wynikającej z interpretacji
       słowa zostanie otwarty do dołączania (append).  Dołączanie będzie wykonywane z deskryptora
       pliku n lub standardowego wyjścia (deskryptor pliku 1) jeśli nie podano  n.   Jeżeli  plik
       nie istnieje jest tworzony.

       Ogólny format dołączania wyjścia:

              [n]>>słowo

   Przekierowanie standardowego wyjścia i wyjścia błędów
       Bash  pozwala,  przy  pomocy tej konstrukcji, przekierować standardowe wyjście (deskryptor
       pliku 1) i standardowe wyjście błędów (deskryptor plików 2) do pliku, którego  nazwą  jest
       zinterpretowane słowo.

       Istnieją dwie postaci takiego przekierowania:

              &>słowo
       i
              >&słowo

       Spośród nich, zalecaną jest pierwsza forma.  Jest ona semantycznie równoważna

              >słowo 2>&1

       Przy  używaniu  drugiej  postaci, słowo nie może zostać zinterpretowane jako liczba ani -.
       Jeśli tak się stanie, zadziała inny operator przekierowania (zob. Powielanie  deskryptorów
       plików poniżej) z powodu kompatybilności wstecznej.

   Dołączanie standardowego wyjścia i wyjścia błędów
       Ta  konstrukcja  pozwala  na  dołączanie,  standardowego  wyjścia  (deskryptor  pliku 1) i
       standardowego  wyjścia  błędów  (deskryptor  plików  2)  do  pliku,  którego  nazwą   jest
       zinterpretowane słowo.

       Format dołączania standardowego wyjścia i wyjścia błędów:

              &>>słowo

       Jest to semantycznie równoważne

              >>słowo 2>&1

       (zob. Powielanie deskryptorów plików poniżej).

   Dokumenty włączone (Here Documents)
       Ten  typ  przekierowania  instruuje  powłokę,  by czytała wejście z bieżącego źródła aż do
       napotkania wiersza zawierającego tylko słowo (bez żadnych kończących odstępów).  Wszystkie
       wiersze  przeczytane  do  tego  momentu są następnie używane jako standardowe wejście (lub
       deskryptor pliku n, jeśli podano n) polecenia.

       Format dokumentów włączonych jest następujący:

              [n]<<[-]słowo
                      dokument włączony
              ogranicznik

       Na słowie nie jest wykonywana interpretacja parametrów ani zmiennych, podstawiania wyników
       poleceń,  rozwijanie nazw plików ani interpretacja wyrażeń arytmetycznych. Jeżeli cytowana
       jest część słowa, to ogranicznik jest wynikiem usunięcia cytowań ze  słowa,  a  wiersze  w
       dokumencie  włączonym  nie  są  interpretowane.  Jeżeli słowo nie jest cytowane, wszystkie
       wiersze dokumentu włączonego podlegają interpretacji parametrów,  podstawianiu  poleceń  i
       interpretacji  wyrażeń  arytmetycznych.  Sekwencja  \<nowalinia>  jest  ignorowana,  a  do
       cytowania znaków \, $ i ` musi być użyte \.

       Jeżeli operatorem przekierowania jest <<-, to  wszystkie  początkowe  znaki  tabulacji  są
       obcinane  z  wierszy  wejściowych  i  wiersza  zawierającego  ogranicznik.   Pozwala to na
       ustawienie naturalnych wcięć dla dokumentów włączonych w skryptach powłoki.

   Łańcuchy włączone (Here Strings)
       Wariant dokumentów włączonych, którego format jest następujący:

              [n]<<<słowo

       Słowo podlega interpretacji nawiasów,  interpretacji  tyldy,  interpretacji  parametrów  i
       zmiennych,  podstawianiu  wyników poleceń, interpretacji wyrażeń arytmetycznych i usuwaniu
       cytowań. Rozwijanie nazw plików i podział na słowa nie  jest  przeprowadzane.  Wynik  jest
       przekazywany poleceniu jako pojedynczy łańcuch z dołączonym znakiem nowego wiersza na jego
       standardowe wejście (lub deskryptor pliku n, jeśli podano n).

   Powielanie deskryptorów plików
       Operator przekierowania

              [n]<&słowo

       służy  do  powielania  deskryptorów  plików  wejściowych.   Jeżeli  słowo  zinterpretowane
       zostanie  jako  jedna lub więcej cyfr, to deskryptor pliku oznaczony przez n czyniony jest
       kopią tego deskryptora.  Jeżeli  cyfry  w  słowie  nie  określają  otwartego  dla  wejścia
       deskryptora,  pojawia  się błąd przekierowania.  Jeżeli słowo zinterpretowane jest jako -,
       deskryptor pliku n jest zamykany. Jeżeli  n  nie  zostało  określone,  to  stosowane  jest
       standardowe wejście (deskryptor pliku 0).

       Operator

              [n]>&słowo

       podobnie, służy do powielania deskryptorów standardowego wyjścia.  Jeżeli nie określono n,
       stosowane jest standardowe wyjście  (deskryptor  pliku  1).  Jeżeli  cyfry  w  słowie  nie
       określają  deskryptora pliku otwartego do wyjścia, pojawia się błąd przekierowania. Jeżeli
       słowo zostanie zinterpretowane jako -, deskryptor  pliku  n  jest  zamykany.  W  przypadku
       specjalnym, jeżeli pominięto n, a słowo nie jest interpretowane jako jedna lub więcej cyfr
       lub -, to przekierowywane są standardowe wyjście i standardowe wyjście błędów, jak opisano
       poprzednio.

   Przenoszenie deskryptorów plików
       Operator przekierowania

              [n]<&słowo-

       przenosi  deskryptor  pliku  słowo  do  deskryptora  pliku  n  lub, jeśli nie podano n, na
       standardowe wejście (deskryptor pliku 0). Słowo jest zamykane po zduplikowaniu do n.

       Podobnie, operator przekierowania

              [n]>&słowo-

       przenosi deskryptor pliku słowo do deskryptora  pliku  n  lub,  jeśli  nie  podano  n,  na
       standardowe wyjście (deskryptor pliku 1).

   Otwieranie deskryptorów plików do odczytu i zapisu
       Operator przekierowania

              [n]<>słowo

       powoduje,  że  plik  o nazwie wynikłej z interpretacji słowa zostanie otwarty do odczytu i
       zapisu.  Odczyt i zapis będą wykonywane z deskryptora pliku n  lub  standardowego  wejścia
       (deskryptor pliku 0) jeśli nie podano n.  Jeżeli plik nie istnieje, to jest tworzony.

ALIASY

       Aliasy  (czyli  synonimy) pozwalają na zastąpienie słowa łańcuchem, gdy zostanie ono użyte
       jako pierwsze słowo w poleceniu prostym.  Powłoka utrzymuje listę aliasów, które mogą  być
       ustawiane  i  unieważniane przy pomocy wbudowanych poleceń alias i unalias (zobacz poniżej
       WBUDOWANE POLECENIA POWŁOKI).  Dla pierwszego słowa  każdego  polecenia,  jeśli  nie  jest
       cytowane,  następuje  sprawdzenie,  czy  posiada  ono  alias. Jeżeli tak, to słowo to jest
       zastępowane tekstem aliasu. Znaki /, $, ` i = i wszystkie  metaznaki  powłoki  oraz  znaki
       cytowania  wypisane  powyżej  nie  mogą  być nazwą aliasu. Tekst zastępujący może zawierać
       dowolne poprawne wejście powłoki, łącznie z metaznakami  powłoki.  Pierwsze  słowo  tekstu
       zastępującego  jest  z  kolei sprawdzane na aliasy, ale słowo identyczne z interpretowanym
       właśnie aliasem nie jest interpretowane powtórnie. Oznacza to, że można mieć alias  ls  do
       ls  -F,  na przykład, a bash nie będzie usiłował rekurencyjnie interpretować zastępującego
       tekstu.  Jeżeli ostatnim znakiem wartości aliasu jest odstęp, to następne słowo  polecenia
       występujące po aliasie ma również sprawdzaną interpretację aliasów.

       Aliasy są tworzone i pokazywane poleceniem alias, a usuwane poleceniem unalias.

       Nie  ma  żadnego  mechanizmu  posługiwania  się  argumentami w tekście zastępującym. Jeśli
       potrzebne są argumenty, powinna zostać użyta funkcja powłoki (zobacz poniżej FUNKCJE).

       Aliasy nie są interpretowane, gdy powłoka nie jest interaktywna, chyba że ustawiono  opcję
       powłoki  expand_aliases  przy pomocy shopt (zobacz opis shopt w sekcji WBUDOWANE POLECENIA
       POWŁOKI poniżej).

       Reguły dotyczące definiowania i używania aliasów są nieco zagmatwane.  Bash  zawsze  czyta
       co  najmniej  jeden  pełny  wiersz  z  wejścia przed wykonaniem jakichkolwiek poleceń tego
       wiersza.  Aliasy  interpretowane  są  w  czasie  odczytu  polecenia,  nie   podczas   jego
       wykonywania.  Z  tego  powodu,  definicja  aliasu występująca w tym samym wierszu, co inne
       polecenie nie zadziała  aż  do  przeczytania  następnego  wiersza  wejścia.  Na  polecenia
       występujące po definicji aliasu, w tym samym wierszu, nowy alias nie ma wpływu. Zachowanie
       to ujawnia się także podczas  wykonywania  funkcji.  Aliasy  interpretowane  są  w  czasie
       odczytu  definicji  funkcji,  nie zaś podczas jej wykonywania, gdyż sama definicja funkcji
       stanowi polecenie. W skutek tego aliasy zdefiniowane w funkcji  nie  są  dostępne,  aż  do
       chwili  po  wykonaniu  funkcji.  Dla bezpieczeństwa, zawsze umieszczaj definicje aliasów w
       odrębnym wierszu i nie używaj alias w poleceniach złożonych.

       Prawie w każdym zastosowaniu aliasy są wyparte przez funkcje powłoki.

FUNKCJE

       Punkcja powłoki, zdefiniowana jak opisano powyżej, w sekcji GRAMATYKA POWŁOKI, przechowuje
       szereg  poleceń  do  późniejszego  wykonania.  Gdy nazwa funkcji powłoki używana jest jako
       nazwa polecenia prostego, wykonywana jest lista poleceń związanych  z  tą  nazwą  funkcji.
       Funkcje  wykonywane  są  w  kontekście  bieżącej  powłoki;  do  ich interpretacji nie jest
       tworzony żaden nowy proces (zauważ różnicę  w  stosunku  do  wykonania  skryptu  powłoki).
       Podczas  wykonywania  funkcji, przekazane jej argumenty stają się parametrami pozycyjnymi.
       Aktualizowany jest specjalny parametr #, tak by odzwierciedlał zmianę. Parametr  pozycyjny
       0  nie jest zmieniany.  Zmienna FUNCNAME podczas wykonywania funkcji ustawiana jest na jej
       nazwę.

       Wszystkie inne aspekty środowiska wykonywania powłoki są identyczne między funkcją  i  jej
       wywołującym,  z  następującymi  wyjątkami:  pułapki  (trap)  DEBUG  i  RETURN (zobacz opis
       wbudowanego trap poniżej, w sekcji WBUDOWANE POLECENIA POWŁOKI) nie są dziedziczone, chyba
       że  funkcja  ma  podany  atrybut  trace (patrz opis wbudowanego declare poniżej) lub opcja
       powłoki -o functrace została włączona wbudowanym set (w takim przypadku wszystkie  funkcje
       dziedziczą  pułapki  DEBUG i RETURN). Pułapka ERR nie jest dziedziczona, chyba że włączono
       opcję -o errtrace powłoki.

       Zmienne lokalne dla funkcji mogą być deklarowane przy pomocy wbudowanego polecenia  local.
       Zwykle zmienne i ich wartości są wspólne dla funkcji i jej wołającego.

       Jeśli  zmienna  FUNCNEST  zostanie  ustawiona  na wartość liczbową większą od 0, to będzie
       definiować maksymalny poziom zagnieżdżenia funkcji. Wywołania funkcji  przekraczające  ten
       poziom będą powodowały przerwanie całego polecenia.

       Jeżeli  w  funkcji  wywoływane jest wbudowane polecenie return, funkcja kończy działanie i
       wykonywanie wznawiane jest od następnego polecenia po  wywołaniu  funkcji.  Każda  funkcja
       powiązana  z  pułapką  RETURN  jest  wykonywana przed wznowieniem wykonywania. Gdy funkcja
       kończy działanie,  parametrom  pozycyjnym  i  parametrowi  specjalnemu  #  przywracane  są
       wartości, jakie posiadały one przed wykonaniem funkcji.

       Listę  nazw  i  definicji  funkcji  można uzyskać przy pomocy opcji -f wbudowanych poleceń
       declare lub typeset.  Opcja -F poleceń declare lub typeset podaje same  nazwy  funkcji  (i
       opcjonalnie  plik  źródłowy  oraz  numer  wiersza, jeśli włączono opcję powłoki extdebug).
       Funkcje można eksportować, tak że będą  one  automatycznie  zdefiniowane  w  podpowłokach.
       Wykonuje się to przy pomocy opcji -f wbudowanego polecenia export. Definicję funkcji można
       usunąć opcją -f lub wbudowanym unset.  Proszę  zauważyć,  że  funkcje  i  zmienne  powłoki
       posiadające  tę  samą  nazwę  mogą  dać  w  wyniku  wiele  wpisów o identycznych nazwach w
       środowisku, przekazywanym do potomków powłoki. Należy zachować ostrożność w przypadkach, w
       których może to powodować problemy.

       Funkcje  mogą  być rekurencyjne. Zmienna FUNCNEST może posłużyć do ograniczenia głębokości
       stosu wywołań funkcji i liczby wywołań funkcji. Domyślnie, nie ma narzuconego ograniczenia
       na liczbę rekurencyjnych wywołań.

OBLICZANIE WYRAŻEŃ ARYTMETYCZNYCH

       Powłoka  pozwala,  pod  pewnymi  warunkami,  na obliczanie wartości wyrażeń arytmetycznych
       (zobacz wbudowane polecenia let i declare, polecenie złożone (( oraz Interpretacja wyrażeń
       arytmetycznych).  Obliczenia  wykonywane  są na liczbach całkowitych o ustalonej wielkości
       (fixed-width), bez kontroli przepełnienia (overflow),  mimo  iż  dzielenie  przez  0  jest
       przechwytywane  i  oznaczane  jako  błąd.   Operatory  i  ich  priorytety  oraz sposób ich
       dołączania są takie same jak w języku C. Poniższa  lista  operatorów  pogrupowana  jest  w
       poziomy  operatorów  o  jednakowym  priorytecie.  Poziomy  podano  w kolejności malejącego
       priorytetu.

       id++ id--
              post-inkrementacja i post-dekrementacja zmiennej
       ++id --id
              pre-inkrementacja i pre-dekrementacja zmiennej
       - +    jednoargumentowy minus i plus
       ! ~    negacja logiczna i bitowa
       **     potęgowanie
       * / %  mnożenie, dzielenie, reszta z dzielenia
       + -    dodawanie, odejmowanie
       << >>  lewo i prawostronne przesunięcie bitowe
       <= >= < >
              porównanie
       == !=  równości i nierówność
       &      bitowa koniunkcja (AND)
       ^      bitowa alternatywa wyłączna (XOR)
       |      bitowa alternatywa (OR)
       &&     logiczna koniunkcja (AND)
       ||     logiczna alternatywa (OR)
       wyraż?wyraż:wyraż
              operator warunkowy
       = *= /= %= += -= <<= >>= &= ^= |=
              przypisanie
       wyraż1 , wyraż2
              przecinek

       Jako operandy dozwolone są zmienne powłoki; interpretacja parametrów  przeprowadzana  jest
       przed  obliczeniem  wyrażenia.   Wewnątrz  wyrażenia,  do  zmiennych powłoki można się też
       odwoływać przez nazwę, bez użycia składni interpretacji parametrów. Zmienna powłoki, która
       jest  pusta  lub  nieustawiona  jest przyjmowana jako 0, gdy odwołuje się do jej nazwy bez
       używania składni interpretacji parametrów. Gdy wystąpi odwołanie się do zmiennej  lub  gdy
       przypisano wartość zmiennej, której nadano wcześniej atrybut liczby całkowitej przy użyciu
       declare -i, to jej wartość obliczana jest jako wyrażenie arytmetyczne. Pusta wartość  jest
       interpretowana jako 0. Zmienna powłoki nie musi mieć włączonego atrybutu liczby całkowitej
       by mogła być użyta w wyrażeniu.

       Stałe z początkowym 0 interpretowane są jako liczby ósemkowe. Początkowe 0x lub 0X oznacza
       liczbę  szesnastkową.  W  pozostałych  przypadkach  liczby mają postać [podstawa#]n, gdzie
       opcjonalna podstawa jest liczbą dziesiętną pomiędzy 2 a 64 reprezentującą podstawę  układu
       pozycyjnego,  zaś  n  liczbą  w  układzie  o tej podstawie.  Jeśli pominięto podstawa#, to
       używana jest podstawa 10. Gdy poda się n, cyfry większe niż 9 reprezentowane są przez małe
       litery,  wielkie litery, @ i _, w tej kolejności. Jeżeli podstawa jest mniejsza bądź równa
       36, to do zapisu liczb pomiędzy 10 a 35 można używać zamiennie małych i wielkich liter.

       Operatory interpretowane są w kolejności priorytetu. Podwyrażenia w nawiasach obliczane są
       jako pierwsze i mogą unieważnić podane wyżej reguły priorytetów.

WYRAŻENIA WARUNKOWE

       Wyrażenia  warunkowe używane są przez polecenie złożone [[ oraz polecenia wbudowane test i
       [ do testowania atrybutów pliku i  wykonywania  porównań  łańcuchowych  i  arytmetycznych.
       Wyrażenia  złożone  są  z  poniższych  jedno- i dwuargumentowych składowych. Bash traktuje
       wiele nazw plików jako specjalne, gdy są używane w wyrażeniach. Jeśli system operacyjny na
       którym działa bash udostępnia je, to bash ich użyje, w przeciwnym razie będzie wewnętrznie
       emulował ich działanie: Jeśli któryś z argumentów plikowych jednej  z  składowych  jest  w
       postaci  /dev/fd/n,  to  sprawdzany jest deskryptor pliku n.  Jeżeli argument plik którejś
       składowej jest jednym z /dev/stdin,  /dev/stdout  lub  /dev/stderr,  to  sprawdzany  jest,
       odpowiednio, deskryptor 0, 1 lub 2.

       Jeśli  nie  określono  inaczej,  składowe  operujące  na  plikach podążają za dowiązaniami
       symbolicznymi i działają na celu dowiązania, a nie na samym dowiązaniu.

       Gdy operatory < i  >  są  używane  z  poleceniem  [[,  to  sortują  zgodnie  z  porządkiem
       leksykograficznym,   używając   bieżącego   ustawienia   locale.  Polecenie  test  sortuje
       korzystając z kolejności ASCII.

       -a plik
              Prawda jeśli plik istnieje.
       -b plik
              Prawda jeśli plik istnieje i jest blokowym plikiem specjalnym.
       -c plik
              Prawda jeśli plik istnieje i jest znakowym plikiem specjalnym.
       -d plik
              Prawda jeśli plik istnieje i jest katalogiem.
       -e plik
              Prawda jeśli plik istnieje.
       -f plik
              Prawda jeśli plik istnieje i jest plikiem zwykłym.
       -g plik
              Prawda jeśli plik istnieje i ma ustawiony bit set-group-id.
       -h plik
              Prawda jeśli plik istnieje i jest dowiązaniem symbolicznym.
       -k plik
              Prawda jeśli plik istnieje i ma ustawiony bit ochrony (sticky bit).
       -p plik
              Prawda jeśli plik istnieje i jest potokiem nazwanym (FIFO).
       -r plik
              Prawda jeśli plik istnieje i daje się czytać.
       -s plik
              Prawda jeśli plik istnieje i ma rozmiar większy niż zero.
       -t fd  Prawda jeśli deskryptor pliku fd jest otwarty i odnosi się do terminala.
       -u plik
              Prawda jeśli plik istnieje i ma ustawiony bit set-user-id.
       -w plik
              Prawda jeśli plik istnieje i daje się doń zapisać.
       -x plik
              Prawda jeśli plik istnieje i jest wykonywalny.
       -G plik
              Prawda jeśli plik istnieje i jego właścicielem jest efektywny id grupy.
       -L plik
              Prawda jeśli plik istnieje i jest dowiązaniem symbolicznym.
       -N plik
              Prawda jeśli plik istnieje i został zmodyfikowany od czasu jego ostatniego odczytu.
       -0 plik
              Prawda jeśli plik istnieje i jego właścicielem jest efektywny id użytkownika.
       -S plik
              Prawda jeśli plik istnieje i jest gniazdem.
       plik1 -ef plik2
              Prawda jeśli plik1 i plik2 odnoszą się do tego samego urządzenia i numeru i-węzła.
       plik1 -nt plik2
              Prawda, jeśli plik1 jest nowszy (według  daty  modyfikacji)  niż  plik2  lub  plik1
              istnieje a plik2 nie.
       plik1 -ot plik2
              Prawda, jeśli plik1 jest starszy niż plik2 lub plik2 istnieje a plik1 nie.
       -o nazwa_opcji
              Prawda  jeśli  opcja powłoki nazwa_opcji jest włączona.  Zobacz zestawienie opcji w
              opisie opcji -o wbudowanego set, poniżej.
       -v nazwa-zmiennej
              Prawda,  jeśli  zmienna  powłoki  zmienna-powłoki  jest  ustawiona   (została   jej
              przypisana wartość).
       -R nazwa-zmiennej
              Prawda,   jeśli  zmienna  powłoki  zmienna-powłoki  jest  ustawiona  i  jest  nazwą
              referencyjną.
       -z łańcuch
              Prawda jeśli długość łańcucha wynosi zero.
       string
       -n łańcuch
              Prawda jeśli łańcuch ma długość niezerową.

       łańcuch1 == łańcuch2
       łańcuch1 = łańcuch2
              Prawda, jeśli łańcuchy są sobie równe. = powinno być używane z poleceniem  test,  w
              celu  zachowania  zgodności  z  normą  POSIX.  Gdy  używane  jest  z poleceniem [[,
              przeprowadzane jest dopasowanie do  wzorca,  zgodnie  z  opisem  powyżej  Polecenia
              złożone).

       łańcuch1 != łańcuch2
              Prawda jeśli łańcuchy nie są równe.

       łańcuch1 < łańcuch2
              Prawda   jeśli  łańcuch1  przy  sortowaniu  występowałby  przed  łańcuchem2  według
              bieżącego ustawienia locale.

       łańcuch1 > łańcuch2
              Prawda jeśli łańcuch1 przy sortowaniu występowałby po  łańcuchu2  według  bieżącego
              ustawienia locale.

       arg1 OP arg2
              OP  jest  jednym  z  -eq,  -ne,  -lt,  -le, -gt lub -ge.  Te arytmetyczne operatory
              dwuargumentowe zwracają prawdę jeśli arg1 jest odpowiednio równe  (eq),  nie  równe
              (ne),  mniejsze  niż  (lt),  mniejsze bądź równe (le), większe niż (gt) lub większe
              bądź równe (ge) arg2.  Arg1  i  arg2  mogą  być  dodatnimi  lub  ujemnymi  liczbami
              całkowitymi.

INTERPRETACJA POLECEŃ PROSTYCH

       Gdy   wykonywane  jest  polecenie  proste,  powłoka  wykonuje  następujące  interpretacje,
       przypisania i przekierowania, od lewej do prawej.

       1.     Słowa oznaczone przez analizator składni jako przypisania zmiennych  (poprzedzające
              nazwę polecenia) i przekierowania zachowywane są do późniejszego przetworzenia.

       2.     Słowa,  nie  będące przypisaniami zmiennych ani przekierowaniami są interpretowane.
              Jeżeli po interpretacji pozostaną jakieś słowa, to pierwsze z nich przyjmowane jest
              za nazwę polecenia a pozostałe za argumenty.

       3.     Wykonywane są przekierowania, jak opisano powyżej w sekcji PRZEKIEROWANIE.

       4.     W  każdym  przypisaniu  zmiennej  tekst  po  znaku równości = podlega interpretacji
              tyldy,  interpretacji  parametrów,  podstawianiu  wyników  poleceń,   interpretacji
              wyrażeń  arytmetycznych  i  usuwaniu  cudzysłowów,  zanim  zostanie  przypisany  do
              zmiennej.

       Jeżeli nie otrzymano żadnej nazwy polecenia, to przypisania zmiennych  dotyczą  środowiska
       aktualnej  powłoki.  W  przeciwnym  razie,  zmienne są dodawane do środowiska wykonywanego
       polecenia i nie mają wpływu na środowisko bieżącej  powłoki.  jeżeli  któreś  z  przypisań
       usiłuje  nadać  wartość  zmiennej  read-only, pojawia się błąd, a polecenie kończy pracę z
       niezerowym kodem.

       Jeżeli nie otrzymano żadnej nazwy polecenia, wykonywane są przekierowania,  ale  nie  mają
       one  wpływu  na  bieżące  środowisko  powłoki.  Błąd przekierowania powoduje, że polecenie
       kończy pracę z niezerowym kodem.

       Jeżeli po interpretacji istnieje nazwa polecenia, to wykonywanie odbywa  się  jak  opisano
       poniżej.  W przeciwnym wypadku, polecenie kończy pracę.  Jeżeli jednym z wykonanych kroków
       było podstawienie wyników polecenia, to zwracany kod  zakończenia  jest  kodem  ostatniego
       wykonanego  podstawienia polecenia. Jeśli nie wystąpiło podstawianie poleceń, to polecenie
       kończy pracę z kodem zerowym.

WYKONYWANIE POLECEŃ

       Po podziale polecenia na słowa, jeśli jego wynikiem jest  polecenie  proste  z  opcjonalną
       listą argumentów, podejmowane są poniższe akcje.

       Jeśli  polecenie  nie zawiera ukośników, powłoka usiłuje je zlokalizować.  Jeżeli istnieje
       funkcja powłoki o tej nazwie, wywoływana jest ta funkcja, jak  opisano  powyżej  w  sekcji
       FUNKCJE.   Jeżeli  nazwa  nie  pasuje  do  funkcji,  powłoka  szuka  jej na liście poleceń
       wbudowanych. Jeżeli znaleziono pasujące, to jest ono wywoływane.

       Jeżeli nazwa nie jest  ani  funkcją  powłoki  ani  poleceniem  wbudowanym  i  nie  zawiera
       ukośników,  to  bash przeszukuje każdy element z PATH usiłując znaleźć katalog zawierający
       plik wykonywalny o takiej nazwie.  Bash posługuje się tablicą mieszającą (hash  table)  do
       zapamiętywania  pełnych  nazw  plików  wykonywalnych  (zobacz  hash  w WBUDOWANE POLECENIA
       POWŁOKI poniżej).  Pełne przeszukiwanie katalogów z PATH wykonywane jest tylko wtedy,  gdy
       polecenia  nie  znaleziono  w  tablicy mieszającej. Jeżeli wyszukiwanie nie powiedzie się,
       powłoka szuka zdefiniowanej funkcji powłoki o nazwie  command_not_found_handle.  Jeśli  ta
       funkcja  istnieje, jest wywoływana z pierwotnym poleceniem i jego argumentami użytymi jako
       jej argumenty, a kod wyjścia funkcji staje się kodem wyjścia powłoki.  Jeśli  funkcja  nie
       jest  zdefiniowana,  powłoka  wypisuje  komunikat o błędzie i zwraca kod zakończenia równy
       127.

       Jeżeli poszukiwanie było pomyślne lub jeśli  nazwa  polecenia  zawiera  jeden  lub  więcej
       ukośników, powłoka wykonuje zadany program w odrębnym środowisku wykonania.  Argumentowi 0
       przypisywana jest podana nazwa, a pozostałym argumentom polecenia podane argumenty,  jeśli
       były takowe.

       Jeżeli  wykonanie to nie powiedzie się, gdyż plik nie ma formatu wykonywalnego, a nie jest
       katalogiem, to zakłada się, że jest on skryptem powłoki,  plikiem  zawierającym  polecenia
       powłoki.   Powoływana  jest podpowłoka do jego wykonania. Powłoka ta reinicjuje się, zatem
       efekt jest taki, jakby do obsługi skryptu została wywołana nowa powłoka, z wyjątkiem tego,
       że  położenia poleceń zapamiętane przez rodzica (zobacz hash poniżej w WBUDOWANE POLECENIA
       POWŁOKI są zachowywane przez potomka.

       Jeżeli program jest plikiem o zawartości rozpoczynającej się od #!, to  reszta  pierwszego
       wiersza  określa  interpreter  dla tego programu.  Powłoka uruchamia podany interpreter na
       systemach operacyjnych, które same nie obsługują tego formatu wykonywalnego. Argumenty dla
       interpretera  składają  się  z pojedynczego opcjonalnego argumentu występującego po nazwie
       interpretera  w  pierwszym  wierszu  programu,  następującej  po  nim  nazwy  programu   i
       następujących po niej argumentów polecenia, jeśli były takowe.

ŚRODOWISKO WYKONYWANIA POLECEŃ

       Powłoka posiada środowisko wykonywania (execution environment), na które składają się:

       ·      otwarte  pliki  odziedziczone  przez  powłokę  przy  wywołaniu, zmodyfikowane przez
              przekierowania przekazane do wbudowanego polecenia exec

       ·      bieżący katalog roboczy ustawiony przez cd,  pushd  lub  popd,  albo  odziedziczony
              przez powłokę przy wywołaniu

       ·      maska  trybu  tworzonych plików ustawioną przez umask albo odziedziczoną po rodzicu
              powłoki

       ·      bieżące pułapki ustawione przez trap

       ·      parametry powłoki ustawione  przez  przypisania  zmiennych  przy  pomocy  set  albo
              odziedziczone ze środowiska rodzica powłoki

       ·      funkcje  powłoki  zdefiniowane  podczas wykonywania lub odziedziczone ze środowiska
              rodzica powłoki

       ·      opcje włączone przy wywołaniu (albo domyślnie albo przy pomocy  argumentów  wiersza
              poleceń) albo przez set

       ·      opcje włączone przez shopt

       ·      aliasy powłoki zdefiniowane przy pomocy alias

       ·      różne id procesów, łącznie z identyfikatorami zadań tła, wartość $$ i wartość $PPID

       Gdy  ma zostać wykonane polecenie proste inne niż funkcja powłoki lub polecenie wbudowane,
       wywoływane jest w odrębnym środowisku wykonania, składających się z poniższych  elementów.
       Jeśli nie podano inaczej, wartości dziedziczone są z powłoki.

       ·      otwarte  pliki  powłoki,  plus modyfikacje i dodatki określone przez przekierowania
              polecenia

       ·      bieżący katalog roboczy

       ·      maska trybu tworzonych plików

       ·      zmienne powłoki oznaczone do wyeksportowania, razem ze  zmiennymi  wyeksportowanymi
              do polecenia, przekazane w środowisku

       ·      pułapki  przechwycone przez powłokę resetowane są do wartości odziedziczonych przez
              nią od rodzica, a pułapki ignorowane przez powłokę są ignorowane.

       Polecenie wywołane w odrębnym  środowisku  nie  może  wpływać  na  środowisko  wykonywania
       powłoki.

       Podstawienia  wyników  poleceń  i  polecenia  asynchroniczne  wywoływane  są  w środowisku
       podpowłoki, które jest kopią środowiska powłoki, z wyjątkiem tego, że pułapki przechwycone
       przez  powłokę  są  resetowane do wartości, jakie powłoka odziedziczyła po rodzicu podczas
       wywołania. Polecenia wbudowane wywoływane  jako  część  potoku  również  wykonywane  są  w
       środowisku  podpowłoki.  Zmiany  wykonane  w  środowisku  podpowłoki  nie  mogą wpływać na
       środowisko wykonywania powłoki.

       Podpowłoki utworzone do wykonania podstawiania wyników poleceń dziedziczą wartość opcji -e
       z  powłoki macierzystej. Jeśli bash nie działa w trybie posix, to czyści opcję -e w takich
       podpowłokach.

       Jeżeli po poleceniu występuje &, a nie  uaktywniono  sterowania  zadaniami,  to  domyślnym
       standardowym  wejściem  dla  tego  polecenia jest pusty plik /dev/null. W przeciwnym razie
       wywoływane polecenie dziedziczy deskryptory plików  po  wołającej  powłoce,  zmodyfikowane
       przekierowaniami.

ŚRODOWISKO

       Podczas  wywoływania program otrzymuje tablicę łańcuchów zwaną środowiskiem (environment).
       Jest to lista par nazwa-wartość, o postaci nazwa=wartość.

       Powłoka  pozwala  na  manipulowanie  środowiskiem  na  kilka  sposobów.  Przy   wywołaniu,
       przeszukuje  ona  własne  środowisko  i  tworzy  parametr  dla  każdej  znalezionej nazwy,
       automatycznie  zaznaczając  go  do  wyeksportowania  do  procesów  potomnych.   Wykonywane
       polecenia  dziedziczą  środowisko.  Polecenia export i declare -x pozwalają na dodawanie i
       usuwanie ze środowiska parametrów i funkcji.  Jeżeli w środowisku zmieniana  jest  wartość
       parametru,  to  nowa  wartość  staje  się częścią środowiska, zastępując starą. Środowisko
       dziedziczone przez  każde  wykonywane  polecenie  składa  się  z  początkowego  środowiska
       powłoki,  którego  wartości  mogą  być w powłoce zmieniane, minus ewentualne pary usunięte
       poleceniem unset, plus dodane poprzez polecenia export i declare -x.

       Środowisko dla dowolnego polecenia prostego czy funkcji może  być  tymczasowo  powiększone
       przez  poprzedzenie  polecenia  przypisaniem  parametrów,  jak  opisano  powyżej  w sekcji
       PARAMETRY.  Te instrukcje przypisania mają wpływ wyłącznie na środowisko postrzegane przez
       to polecenie.

       Jeżeli  ustawiona  jest  opcja  -k  (zobacz  poniżej  opis  wbudowanego polecenia set), to
       wszystkie przypisania parametrów umieszczane są w środowisku polecenia, a  nie  tylko  te,
       które poprzedzają nazwę polecenia.

       Gdy  bash  wywołuje  polecenie  zewnętrzne,  zmienna _ ustawiana jest na pełną nazwę pliku
       polecenia i przekazywana temu poleceniu w jego środowisku.

KOD ZAKOŃCZENIA

       Kod zakończenia wykonanego polecenia jest wartością  zwracaną  przez  wywołanie  systemowe
       waitpid  lub  funkcję będącą jego odpowiednikiem. Kody zakończenia mieszczą się w zakresie
       od 0 do 255, przy czym, jak wyjaśniono poniżej, powłoka może używać wartości powyżej 125 w
       sposób  specjalny.  Kod  zakończenia  z  wbudowanych  poleceń  powłoki i poleceń złożonych
       również są ograniczone do powyższego przedziału. W szczególnych przypadkach, powłoka używa
       wartości specjalnych aby poinformować o konkretnym trybie błędu.

       Dla celów powłoki, polecenie, które zakończyło pracę z zerowym kodem zakończenia, powiodło
       się. Zerowy kod oznacza powodzenie. Niezerowy kod  oznacza  niepowodzenie.  Gdy  polecenie
       kończy  pracę  z  błędem  krytycznym  N,  bash  posługuje  się  wartością 128+N jako kodem
       zakończenia.

       Jeżeli nie znaleziono polecenia, proces potomny powołany do jego wykonania zwraca kod 127.
       Jeżeli polecenie zostało znalezione, ale nie jest wykonywalne, kod zakończenia wynosi 126.

       Jeżeli polecenie nie powiodło się z powodu błędu podczas interpretacji lub przekierowania,
       kod zakończenia jest większy od zera.

       Wbudowane polecenia powłoki zwracają kod 0 (true prawda) jeśli się powiodły,  i  niezerowy
       (false  fałsz)  jeśli  podczas  ich  wykonywania  pojawił  się  błąd.  Wszystkie polecenia
       wbudowane zwracają kod 2 dla wskazania niepoprawnego użycia, zwykle nieprawidłowych  opcji
       lub brakujących argumentów.

       Sam  Bash zwraca kod zakończenia ostatniego wykonanego polecenia, chyba że pojawi się błąd
       składni, wówczas  kończy  pracą  z  wartością  niezerową.  Zobacz  też  poniżej  polecenie
       wbudowane exit.

SYGNAŁY

       Gdy  bash  jest interaktywny, przy braku jakichkolwiek pułapek (przechwytywania sygnałów),
       ignoruje on SIGTERM (tak, że kill 0 nie  zabija  powłoki  interaktywnej),  a  SIGINT  jest
       przechwytywany  i  obsługiwany  (tak,  że wbudowane polecenie wait daje się przerwać).  We
       wszystkich przypadkach,  bash  ignoruje  SIGQUIT.   Jeżeli  działa  kontrola  zadań,  bash
       ignoruje SIGTTIN, SIGTTOU i SIGTSTP.

       Zadania  synchroniczne  uruchomione  przez  bash  mają  procedury obsługi sygnałów (signal
       handlers) ustawione na wartości odziedziczone przez powłokę po rodzicu. Jeżeli nie pracuje
       kontrola  zadań, to polecenia asynchroniczne ignorują również SIGINT i SIGQUIT.  Polecenia
       uruchamiane wskutek podstawiania poleceń ignorują generowane z klawiatury sygnały kontroli
       zadań SIGTTIN, SIGTTOU i SIGTSTP.

       Powłoka  domyślnie  kończy  pracę  po  otrzymaniu  SIGHUP.   Przed  zakończeniem,  powłoka
       interaktywna rozsyła otrzymany SIGHUP do wszystkich zadań, pracujących  lub  zatrzymanych.
       Do  zatrzymanych  zadań  wysyłany jest SIGCONT by upewnić się, że otrzymują SIGHUP.  Chcąc
       uniknąć wysłania sygnału przez powłokę do konkretnego zadania, należy usunąć je z  tablicy
       zadań  przy  pomocy  wbudowanego  polecenia  disown  (zobacz  poniżej  WBUDOWANE POLECENIA
       POWŁOKI)  lub oznakować, by nie otrzymywało SIGHUP, posługując się disown -h.

       Jeżeli przy pomocy shopt została ustawiona opcja huponexit powłoki, bash wysyła SIGHUP  do
       wszystkich zadań, gdy kończy pracę interaktywna powłoka zgłoszeniowa.

       Gdy  bash  podczas  oczekiwania  na  ukończenie  polecenia  otrzymuje  sygnał, dla którego
       ustawiono pułapkę, pułapka ta nie zostanie wykonana aż  do  zakończenia  pracy  polecenia.
       Gdy  bash  oczekuje  na polecenie asynchroniczne za pośrednictwem wbudowanego wait, odbiór
       sygnału, dla którego ustawiono przechwytywanie spowoduje, że  wbudowane  wait  natychmiast
       skończy pracę z kodem większym od 128, po czym natychmiast zostanie wywołana pułapka.

KONTROLA ZADAŃ

       Kontrola zadań odnosi się do możliwości selektywnego zatrzymywania (zawieszania - suspend)
       wykonywania procesów i późniejszej kontynuacji  (wznawiania  -  resume)  ich  wykonywania.
       Użytkownik  zwykle wykorzystuje to udogodnienie za pośrednictwem interaktywnego interfejsu
       obsługiwanego wspólnie przez systemowy sterownik terminala i bash.

       Powłoka kojarzy z każdym potokiem zadanie.   Przechowuje  tablicę  aktualnie  wykonywanych
       zadań,  którą  można  przeglądać  za  pomocą  polecenia  jobs.  Gdy bash uruchamia zadanie
       asynchronicznie (w tle), wypisuje wiersz w rodzaju:

              [1] 25647

       wskazujący, że zadanie to ma numer 1 a ID ostatniego procesu w potoku związanym z zadaniem
       wynosi  25647.   Wszystkie  procesy  w  jednym potoku należą do tego samego zadania.  Bash
       posługuje się abstrakcją (abstraction) zadania jako podstawą kontroli zadań.

       Dla ułatwienia implementacji interfejsu użytkownika do kontroli zadań,  system  operacyjny
       utrzymuje  pojęcie  ID  grupy procesów bieżącego terminala (current terminal process group
       ID).  Elementy tej grupy procesów (procesy, których ID grupy procesów jest równy ID  grupy
       procesów bieżącego terminala) otrzymują generowane z klawiatury sygnały, takie jak SIGINT.
       Mówimy, że procesy te pracują pierwszoplanowo.  Procesy tła to  takie,  których  ID  grupy
       procesów  różni  się  od  terminala;  procesy  takie  są  odporne  na sygnały pochodzące z
       klawiatury.  Tylko procesom pierwszoplanowym wolno czytać i, jeśli użytkownik ustawi  stty
       tostop,  pisać na terminal. Do procesów tła usiłujących czytać z (i pisać do, jeśli działa
       stty tostop) terminala wysyłany jest przez sterownik terminala sygnał  SIGTTIN  (SIGTTOU),
       który, jeśli nie zostanie przechwycony, wstrzymuje proces.

       Jeżeli  system  operacyjny,  na  którym działa bash obsługuje kontrolę zadań, bash zawiera
       funkcje do jej wykorzystywania.  Naciśnięcie klawisza wstrzymania (zwykle  ^Z,  Control-Z)
       podczas  pracy  procesu  powoduje, że proces ten zostanie zatrzymany a sterowanie zostanie
       zwrócone do bash.  Naciśnięcie  klawisza  opóźnione  wstrzymanie  (zwykle  ^Y,  Control-Y)
       powoduje,  że proces zostanie zatrzymywany gdy będzie usiłował czytać wejście z terminala,
       a sterowanie powróci do bash.  Użytkownik może następnie zmieniać  stan  takiego  zadania,
       posługując  się poleceniem bg do kontynuacji zadania w tle, fg do kontynuacji na pierwszym
       planie lub poleceniem kill do zabicia zadania.  ^Z działa natychmiast i ma efekt  uboczny:
       powoduje  odrzucenie  oczekującego  wyjścia i wprowadzonych, a nieprzetworzonych naciśnięć
       klawiszy (typeahead).

       Istnieje kilka sposobów wskazywania zadania w powłoce.  Znak %  poprzedza  nazwę  zadania.
       Zadanie  numer  n  można  wskazać  jako  %n.   Zadanie może być też określone przez użycie
       przedrostka nazwy użytej do jego uruchomienia  lub  podłańcucha,  jaki  występuje  w  jego
       wierszu  poleceń.   Na  przykład,  %ce  odnosi  się  do  zatrzymanego  zadania  ce.  Jeśli
       przedrostek pasuje do więcej niż jednego zadania, bash zgłasza  błąd.  Z  drugiej  strony,
       użycie  %?ce, wskazuje na zadanie zawierające podłańcuch ce w swym wierszu poleceń. Jeżeli
       łańcuch pasuje do więcej niż jednego zadania, bash zgłasza błąd. Symbole %% i %+ określają
       rozumiane przez powłokę bieżące zadanie, będące ostatnim zadaniem zatrzymanym, gdy było na
       pierwszym planie lub uruchomionym w tle.  Do poprzedniego zadania można odwoływać się przy
       pomocy  %-.   W  wyjściu  odnoszącym  się  do  zadań (np. wyjście polecenia jobs), bieżące
       zadanie jest zawsze zaznaczone znakiem +,  a  zadanie  poprzednie  -.  Pojedynczy  %  (bez
       towarzyszącego określenia zadania) również odnosi się do bieżącego zadania.

       Do  przywrócenia zadania na pierwszy plan można posłużyć się po prostu jego nazwą: %1 jest
       synonimem dla ,,fg %1”, przywracającego zadanie 1 z tła na pierwszy plan.  Podobnie,  ,,%1
       &” wznawia zadanie 1 w tle, równoważnie do ,,bg %1””.

       Powłoka  natychmiast  dowiaduje  się  czy zadanie zmieniło stan.  Normalnie, bash czeka ze
       zgłoszeniem zmian do momentu, gdy ma wyświetlić zachętę, by nie przerywać innego  wyjścia.
       Jeżeli włączono opcję -b wbudowanego polecenia set, bash zgłasza takie zmiany natychmiast.
       Dla  każdego  kończącego  pracę  procesu  potomnego  wykonywana  jest  ewentualna  pułapka
       przechwytująca SIGCHLD.

       Jeżeli  wykonano  próbę  zakończenia  pracy  bash przy istniejących zatrzymanych zadaniach
       (lub, gdy włączono  opcję  powłoki  checkjobs  używając  wbudowanego  shopt,  działających
       zadaniach),  powłoka  wypisuje  komunikat  ostrzegawczy  i, jeśli włączono opcję checkjobs
       wypisuje zadania wraz z  ich  stanem.  Można  wówczas  posłużyć  się  poleceniem  jobs  do
       sprawdzenia   ich  stanu.  Jeżeli  wykonywana  jest  druga  próba  zakończenia  pracy  bez
       wystąpienia wtrąconego między nie polecenia, powłoka nie wypisuje kolejnego ostrzeżenia  a
       zatrzymane zadania są przerywane.

ZACHĘTA POWŁOKI

       Przy  wykonywaniu  interaktywnym bash wyświetla główny symbol zachęty (primary prompt) PS1
       kiedy jest gotowa na odczyt polecenia, zaś wtórną (secondary) zachętę PS2 kiedy potrzebuje
       więcej  danych  z  wejścia  do  uzupełnienia  polecenia.  Bash wyświetla PS0 po odczytaniu
       polecenia, a przed jego wykonaniem. Bash pozwala na dostosowywanie tych łańcuchów  zachęty
       poprzez  wstawianie  wielu  znaków  specjalnych rozpoczynających się odwrotnym ukośnikiem,
       które są dekodowane jak następuje:
              \a     znak dzwonka ASCII (07)
              \d     data w formacie "DzieńTyg Miesiąc Dzień" (np. "Tue May 26")
              \D{format}
                     format jest przekazywany do strftime(3), a wynik jest wstawiany do  łańcucha
                     zachęty.  Pusty  format  daje  w  wyniku  czas  w lokalnym formacie. Nawiasy
                     klamrowe są wymagane
              \e     znak escape ASCII (033)
              \h     nazwa hosta do pierwszej kropki `.'
              \H     nazwa hosta
              \j     liczba zadań aktualnie obsługiwanych przez powłokę
              \l     główna część nazwy urządzenia terminala powłoki
              \n     znak nowej linii
              \r     powrót karetki (carriage return)
              \s     nazwa powłoki, główna część  nazwy  $0  (fragment  występujący  po  ostatnim
                     ukośniku)
              \t     bieżący czas w formacie 24-godzinnym GG:MM:SS
              \T     bieżący czas w formacie 12-godzinnym GG:MM:SS
              \@     bieżący czas w 12-godzinnym formacie am/pm
              \A     bieżący czas w 24-godzinnym formacie GG:MM
              \u     nazwa bieżącego użytkownika (username)
              \v     wersja programu bash (np. 2.00)
              \V     wydanie bash, wersja+poziom łat (np., 2.00.0)
              \w     bieżący  katalog  roboczy, z $HOME zapisanym w skrócie tyldą (używa wartości
                     ze zmiennej PROMPT_DIRTRIM)
              \W     główna część nazwy bieżącego katalogu roboczego, z $HOME zapisanym w skrócie
                     tyldą
              \!     numer tego polecenia w historii
              \#     numer polecenia tego polecenia
              \$     jeżeli efektywnym UID jest 0, to #, w przeciwnym razie $
              \nnn   znak odpowiadający ósemkowej liczbie nnn
              \\     odwrotny ukośnik
              \[     początek  sekwencji znaków niedrukowalnych, która może służyć do osadzenia w
                     zachęcie sekwencji sterujących terminalem
              \]     koniec sekwencji znaków niedrukowalnych

       Numer polecenia i numer w historii są zwykle różne: numer polecenia w historii  jest  jego
       pozycją  na  liście  historii,  która może obejmować polecenia odtworzone z pliku historii
       (zobacz poniżej HISTORIA), podczas gdy numer polecenia jest pozycją  w  sekwencji  poleceń
       wykonanych  w obecnej sesji powłoki.  Po zdekodowaniu, łańcuch jest interpretowany poprzez
       interpretację   parametrów,   podstawianie   wyników   poleceń,   interpretację    wyrażeń
       arytmetycznych,  interpretację  łańcuchów  i  usuwanie  cytowań, zgodnie z wartością opcji
       promptvars powłoki (zobacz opis polecenia  shopt  w  sekcji  WBUDOWANE  POLECENIA  POWŁOKI
       poniżej).

READLINE

       Jest  to  biblioteka  obsługująca  odczytywanie  wejścia  podczas posługiwania się powłoką
       interaktywną, chyba że  przy  wywołaniu  powłoki  podano  opcję  --noediting.   Domyślnie,
       polecenia  edycji  wiersza  są  podobne  do  występujących  w macsie.  Dostępny jest także
       interfejs edycji wiersza w stylu vi.  Edycja  wiersza  może  zostać  włączona  w  dowolnym
       czasie, przy użyciu opcji -o emacs lub -o vi wbudowanego polecenia set. By wyłączyć edycję
       wiersza po uruchomieniu powłoki, użyj opcji +o emacs lub +o vi wbudowanego  polecenia  set
       (zobacz WBUDOWANE POLECENIA POWŁOKI poniżej).

   Notacja Readline
       W  tej  sekcji, do zapisu naciśnięć klawiszy używana jest notacja w stylu emacsa. Klawisze
       Control zapisywane są jako C-klawisz, np., C-n oznacza Control-N. Podobnie, meta  klawisze
       zapisywane  są  jako  M-klawisz,  zatem M-x oznacza Meta-X.  (Na klawiaturach bez klawisza
       meta M-x oznacza ESC x, tj. naciśnij klawisz Escape a następnie klawisz x.  Czyni  to  ESC
       przedrostkiem  meta  (meta  prefix).  Kombinacja M-C-x oznacza ESC-Control-x, lub naciśnij
       klawisz Escape, następnie przytrzymaj klawisz Control podczas naciskania klawisza x.)

       Poleceniom readline można podawać numeryczne  argumenty,  które  normalnie  działają  jako
       licznik  powtórzeń.   Czasami  jednak,  znaczący jest znak argumentu. Przekazanie ujemnego
       argumentu poleceniu, które działa w przód (np. kill-line) powoduje, że będzie ono  działać
       odwrotnym  kierunku  (wstecz).   Polecenia,  których  zachowanie  z argumentami odbiega od
       podanego odnotowano poniżej.

       Gdy polecenie opisano jako usuwające  (killing)  tekst,  tekst  ten  jest  zachowywany  to
       ewentualnego późniejszego odzyskania (przywołania yanking). Kolejne usunięcia powodują, że
       tekst jest zbierany w jedną całość, którą można odzyskać naraz.  Polecenia  nie  usuwające
       tekstu oddzielają kawałki tekstu w stosie usuwania (killing ring).

   Inicjalizacja Readline
       Readline  dostosowywane  jest  przy pomocy poleceń umieszczanych w pliku inicjującym (plik
       inputrc).  Nazwa tego pliku brana jest z wartości zmiennej INPUTRC.  Jeżeli zmienna ta nie
       jest ustawiona, domyślną nazwą jest ~/.inputrc.  Gdy startuje program używający biblioteki
       readline, odczytywany jest plik inicjujący, po czym ustawiane są  przypisania  klawiszy  i
       zmienne.   Istnieje  tylko  kilka  podstawowych  konstrukcji dozwolonych w pliku inicjacji
       readline.  Puste wiersze są ignorowane.  Wiersze rozpoczynające się od # są  komentarzami.
       Wiersze  rozpoczynające  się od $ wskazują konstrukcje warunkowe.  Inne wiersze wyznaczają
       przypisania klawiszy i ustawienia zmiennych.

       Domyślne przypisania klawiszy można zmienić przy  pomocy  pliku  inputrc.   Inne  programy
       posługujące się tą biblioteką mogą dodawać własne polecenia i przypisania.

       Na przykład, umieszczenie

              M-Control-u: universal-argument
       lub
              C-Meta-u: universal-argument
       w inputrc spowodowałoby, że M-C-u wywoływałoby polecenie readline universal-argument.

       Rozpoznawane są następujące symboliczne nazwy znaków: RUBOUT, DEL, ESC, LFD, NEWLINE, RET,
       RETURN, SPC, SPACE i TAB.

       Oprócz nazw poleceń  readline  pozwala  przypisywać  klawisze  do  łańcucha.  Łańcuch  ten
       zostanie wstawiony po naciśnięciu klawisza (makro).

   Przypisania klawiszy Readline
       Składnia  przypisań  klawiszy  sterujących  w  pliku  inputrc  jest  prosta. Wymagana jest
       wyłącznie nazwa polecenia lub tekst makra i sekwencja  klawiszy,  do  której  powinno  być
       przypisane. Klawisze mogą być podane na dwa sposoby: jako symboliczna nazwa klawisza, może
       być z przedrostkami Meta- lub Control-, lub jako sekwencja klawiszy.

       Przy użyciu postaci nazwa-klaw:nazwa-funkcji lub makro,  nazwa-klaw  jest  nazwą  klawisza
       zapisaną w jęz.angielskim. Na przykład:

              Control-u: universal-argument
              Meta-Rubout: backward-kill-word
              Control-o: "> output"

       W  powyższym  przykładzie,  C-u  przypisane  jest  do  funkcji  universal-argument,  M-DEL
       przypisane jest do funkcji backward-kill-word  a  C-o  przypisane  do  uruchamiania  makra
       wyrażonego po prawej (to jest, wstawiania tekstu ``> output'' w wiersz).

       W  drugiej postaci, "sekw-klaw":nazwa-funkcji lub makro, sekw-klaw różni się od nazwa-klaw
       powyżej  tym,  że  przez  umieszczenie  sekwencji  w  cudzysłowach  można  podać  łańcuchy
       oznaczające całą sekwencję klawiszy. Można posłużyć się niektórymi kombinacjami klawiszy w
       stylu GNU Emacs-a, jak w poniższym przykładzie, nie  są  jednak  rozpoznawane  symboliczne
       nazwy znaków:

              "\C-u": universal-argument
              "\C-x\C-r": re-read-init-file
              "\e[11~": "Klawisz funkcyjny 1"

       W  tym  przykładzie,  C-u jest ponownie przypisane do funkcji universal-argument.  C-x C-r
       przypisane jest do funkcji  re-read-init-file,  zaś  ESC  [  1  1  ~  przypisane  jest  do
       wstawienia tekstu ``Function Key 1''.

       Oto pełny zestaw sekwencji specjalnych w stylu GNU Emacs
              \C-    przedrostek control
              \M-    przedrostek meta
              \e     znak escape
              \\     odwrotny ukośnik (backslash)
              \"     dosłowny cudzysłów "
              \'     dosłowny apostrof '

       Oprócz  sekwencji  specjalnych  w stylu GNU Emacsa, dostępny jest drugi zestaw sekwencji z
       użyciem odwrotnego ukośnika:
              \a     alarm (dzwonek)
              \b     backspace
              \d     delete
              \f     znak wysuwu strony (form feed)
              \n     znak nowej linii
              \r     powrót karetki (carriage return)
              \t     tabulacja pozioma (horizontal tab)
              \v     tabulacja pionowa (vertical tab)
              \nnn   ośmiobitowy znak, którego wartością  jest  ósemkowa  liczba  nnn  (jedna  do
                     trzech cyfr)
              \xHH   ośmiobitowy  znak, którego wartością jest szesnastkowa liczba nnn (jedna lub
                     dwie cyfry szesnastkowe)

       Podczas wprowadzania tekstu makra, do wskazania jego definicji muszą być użyte  pojedyncze
       lub  podwójne  cudzysłowy.  Zakłada się, że tekst niecytowany jest nazwą funkcji.  W ciele
       makra interpretowane są sekwencje specjalne z użyciem odwrotnego ukośnika opisane powyżej.
       odwrotny ukośnik cytuje dowolny inny znak w tekście makra, łącznie z " i '.

       Bash  umożliwia  wyświetlanie  i  zmianę  bieżących  przypisań klawiszy readline za pomocą
       wbudowanego polecenia bind.  Tryb edycji można przełączać podczas używania  interaktywnego
       przez  posłużenie  się  opcją  -o  wbudowanego  polecenia  set  (zobacz  poniżej WBUDOWANE
       POLECENIA POWŁOKI).

   Zmienne Readline
       Readline posiada zmienne, których można używać do dodatkowego dostosowania jej zachowania.
       Zmienna może być ustawiana w pliku inputrc przy pomocy instrukcji postaci

              set nazwa-zmiennej wartość

       Z  wymienionymi  niżej  wyjątkami,  zmienne  readline  mogą przyjmować wartości On lub Off
       (wielkość znaków nie ma znaczenia).  Nierozpoznane  nazwy  zmiennych  są  ignorowane.  Gdy
       odczytywana  jest  wartość  zmiennej,  puste lub wyzerowane wartości, "on" (bez względu na
       wielkość liter) i "1" są równoważne On. Wszystkie pozostałe wartości są równoważne Off.  A
       oto zmienne i ich wartości domyślne:

       bell-style (audible)
              Kontroluje,  co  dzieje  się  gdy readline chce użyć sygnału dźwiękowego terminala.
              Jeśli ustawiona na none, readline nigdy nie emituje sygnału.   Jeśli  ustawiona  na
              visible,  readline  posługuje się "widzialnym dzwonkiem" (visible bell), jeśli jest
              dostępny.  Jeżeli ustawiona na audible, readline usiłuje uzyskać sygnał dźwiękowy z
              terminala.
       bind-tty-special-chars (On)
              Jeśli ustawiona na On, readline będzie próbował przypiąć znaki kontrolne traktowane
              w sposób specjalny przez sterownik terminala jądra do ich odpowiedników readline.
       blink-matching-paren (Off)
              Jeśli ustawiona na On, readline spróbuje na  krótko  przesunąć  kursor  do  nawiasu
              otwierającego przy wstawieniu nawiasu zamykającego.
       colored-completion-prefix (Off)
              Jeśli  ustawiona  na  On,  przy  wypisywaniu  dopasowań, readline wyświetli wspólny
              przedrostek dla zestawu  możliwych  dopasowań  za  pomocą  różnych  kolorów.  Wzory
              kolorów są brane z wartości zmiennej środowiskowej LS_COLORS.
       colored-stats (Off)
              Jeśli  ustawiona  na  On, readline wyświetli możliwe dopasowania za pomocą używając
              kolorów wskazujących na ich typ pliku. Wzory kolorów są brane z  wartości  zmiennej
              środowiskowej LS_COLORS.
       comment-begin (,,#”)
              Łańcuch   wstawiany,   gdy   wykonywane  jest  polecenie  insert-comment  readline.
              Polecenie to jest przypisane do M-# w trybie emacs, zaś do # w trybie vi.
       completion-display-width (-1)
              Liczba  kolumn  ekranowych  używanych  do  wyświetlenia  możliwych  dopasowań  przy
              przeprowadzaniu  dopasowań.  Wartość jest ignorowana, jeśli jest mniejsza niż 0 lub
              większa niż szerokość ekranu terminala. Wartość 0 spowoduje,  że  dopasowania  będą
              wyświetlane po jednym na wiersz. Domyślna wartość to -1.
       completion-ignore-case (Off)
              Jeżeli  ustawiona na On, readline wykonuje dopasowywanie i uzupełnianie nazw plików
              bez rozróżniania wielkości liter.
       completion-map-case (Off)
              Jeśli ustawiona na On i  włączona  jest  completion-ignore-case  readline  traktuje
              znaki  minusa  -) i podkreślnika (_) jako równoważne przy dokonywaniu dopasowania i
              uzupełniania nazw plików gdy ma to czynić bez względu na wielkość znaków.
       completion-prefix-display-length (0)
              Długość (w znakach) wspólnego przedrostka  listy  możliwych  uzupełnień,  które  są
              wyświetlane bez modyfikacji. Gdy jest ustawiona na wartość większą od zera, wspólne
              przedrostki  dłuższe  od  tej  wartości  są   zastępowane   wielokropkiem   podczas
              wyświetlania dostępnych uzupełnień.
       completion-query-items (100)
              Określa,   kiedy  użytkownik  jest  pytany  o  oglądanie  takiej  liczby  możliwych
              uzupełnień tworzonych przez polecenie possible-completions.  Może być ustawiona  na
              dowolną   liczbę  całkowitą  większą  lub  równą  zero.   Jeżeli  liczba  możliwych
              uzupełnień jest większa bądź równa wartości tej zmiennej, to użytkownik jest pytany
              czy chce je oglądnąć; w przeciwnym razie są one po prostu pokazywane na terminalu.
       convert-meta (On)
              Jeśli  ustawione na On, readline będzie zamieniał znaki z ustawionym ósmym bitem na
              sekwencje klawiszy ASCII przez obcięcie ósmego bitu i poprzedzenie  znakiem  escape
              (w  efekcie, używając escape jako przedrostka meta). Domyślnie ustawione na On, ale
              readline zmieni ustawienie na Off jeśli locale zawierają znaki ośmiobitowe.
       disable-completion (Off)
              Jeśli ustawione na On,  readline  zabroni  uzupełniania  słów.  Znaki  uzupełniania
              zostaną wstawione w wiersz tak, jakby zostały przypisane do self-insert.
       echo-control-characters (On)
              Jeśli  ustawione na On, readline wyświetla znak odpowiadający sygnałowi otrzymanemu
              z klawiatury, w systemach które informują o obsługiwaniu tej właściwości.
       editing-mode (emacs)
              Kontroluje czy readline rozpoczyna pracę z zestawem przypisań klawiszy podobnym  do
              emacs czy do vi.  editing-mode może być ustawiane albo na emacs albo na vi.
       enable-bracketed-paste (Off)
              Gdy ustawione na On, readline skonfiguruje terminal w sposób który pozwoli wstawiać
              wklejenia do bufora edycji jako pojedynczy łańcuch znaków, zamiast traktować  każdy
              znak  z  osobna,  jak  byłby  wprowadzany  z  klawiatury.  W  ten  sposób unika się
              interpretacji wklejanych znaków jako poleceń edycji.
       enable-keypad (Off)
              Gdy jest  ustawione  na  On,  readline  będzie  usiłować  włączyć  numeryczny  blok
              klawiatury  (application  keypad) przy wywołaniu.  Niektóre systemy potrzebują tego
              do włączenia klawiszy strzałek.
       enable-meta-key (On)
              Gdy jest ustawiona na On, readline próbuje włączyć dostępne  modyfikujące  klawisze
              meta,  o  których  obsługiwaniu  zapewnia  terminal,  gdy  są  wywoływane. Na wielu
              terminalach meta klawisz jest używany do wysyłania znaków ośmiobitowych.
       expand-tilde (Off)
              Jeżeli  ustawione  na  On,  podczas  próby  uzupełniania  słów  readline   wykonuje
              interpretację tyldy.
       history-preserve-point (Off)
              Ustawione  na on powoduje, że kod obsługi historii poleceń usiłuje w każdym wierszu
              poleceń odzyskanym za  pomocą  previous-history  lub  next-history  umieścić  punkt
              (bieżącą pozycję kursora) w tym samym miejscu.
       history-size (unset)
              Ustawia  maksymalną liczbę wpisów historii zapisywanych w liście historii. Gdy jest
              ustawiona na zero, istniejące wpisy są usuwane,  a  nowe  nie  są  zapisywane.  Gdy
              wartość jest mniejsza od zera, liczba wpisów w liście historii jest nieograniczona.
              Domyślnie liczba wpisów w  liście  historii  jest  ustawiana  na  wartość  zmiennej
              powłoki HISTSIZE. Jeśli spróbuje się ustawić history-size na wartość nienumeryczną,
              maksymalna liczba wpisów historii zostanie ustawiona na 500.
       horizontal-scroll-mode (Off)
              Ustawione na On powoduje, że readline do  wyświetlania  posługuje  się  pojedynczym
              wierszem.  Jeśli  wejście jest dłuższe niż szerokość ekranu, to jego zawartość jest
              wówczas przewijana w poziomie w pojedynczym wierszu ekranu,  zamiast  zawijania  do
              następnego wiersza.
       input-meta (Off)
              Jeśli  ustawiona na On, readline dopuści ośmiobitowe wejście (to znaczy, nie będzie
              obcinać ósmego bitu z  odczytywanych  znaków),  bez  względu  na  to,  co  twierdzi
              terminal  o  możliwości  obsługi.  Nazwa  meta-flag  jest  synonimem  tej zmiennej.
              Domyślnie ustawiona na Off, ale readline zmieni  ustawienie  na  On,  jeśli  locale
              zawierają znaki ośmiobitowe.
       isearch-terminators (,,C-[C-J”)
              Łańcuch  znaków, który powinien przerywać wyszukiwanie krokowe (incremental search)
              bez późniejszego wykonywania znaku jako polecenia.  Jeżeli zmiennej tej nie  nadano
              wartości, to wyszukiwanie krokowe będą przerywać ESC i C-J.
       keymap (emacs)
              Ustawia  bieżące  mapowanie  klawiatury  readline.  Zestawami poprawnych mapowań są
              emacs, emacs-standard, emacs-meta, emacs-ctlx, vi, vi-command i vi-insert.  vi jest
              równoważnikiem  dla  vi-command;  emacs  jest  równoważne  emacs-standard. Domyślną
              wartością jest emacs; wartość editing-mode również wpływa na domyślne mapowanie.
       emacs-mode-string (@)
              Ten łańcuch jest wyświetlany zaraz  po  ostatnim  wierszu  pierwszej  zachęty,  gdy
              aktywny  jest  tryb  edycji  emacsa.  Wartość  jest  interpretowana jak przypisania
              klawiszy, tak więc  dostępne  są  standardowe  przedrostki  meta-  i  control  oraz
              sekwencje  ucieczki korzystające z ukośnika. Sekwencje ucieczki \1 i \2 odpowiednio
              zaczynają i kończą znaki niedrukowalne, co można wykorzystać do osadzenia sekwencji
              kontrolnych terminala w tym łańcuchu.
       keyseq-timeout (500)
              Określa  czas,  jaki readline poczeka na znak, gdy odczytuje wieloznaczną sekwencję
              klawiszy (taką, która z dotychczasowego wejścia może  utworzyć kompletną  sekwencję
              klawiszy  lub  może  otrzymać  dodatkowe  wejście,  aby utworzyć kompletną, dłuższą
              sekwencję klawiszy). Jeżeli  wejście  nie  zostanie  wprowadzone  w  trakcie  czasu
              oczekiwania,  readline  użyje  krótszej kompletnej sekwencji klawiszy. Wartość jest
              określona w milisekundach, dlatego 1000 oznacza, że  readline  poczeka  sekundę  na
              dodatkowe  wejście.  Jeśli  ta  zmienna  jest  ustawiona  na  wartość  mniejszą lub
              równą zero,  lub  na  wartość  nienumeryczną,  readline   poczeka   na   wciśnięcie
              dodatkowego klawisza, aby zdecydować którą sekwencję klawiszy uzupełnić.
       mark-directories (On)
              Jeżeli  ustawione  na  On,  to  uzupełniane  nazwy katalogów mają dołączany końcowy
              ukośnik.
       mark-modified-lines (Off)
              Jeżeli ustawione na On, wiersze historii, które zostały zmienione wyświetlane są  z
              poprzedzającą je gwiazdką (*).
       mark-symlinked-directories (Off)
              Gdy  ustawiona  na  On,  uzupełniane  nazwy  będące  dowiązaniami  symbolicznymi do
              katalogów, mają dodany znak ukośnika (przedmiot wartości mark-directories).
       match-hidden-files (On)
              Ta zmienna, gdy jest ustawiona na On, powoduje, że readline wykonując  uzupełnianie
              nazw  plików  dopasowuje  pliki,  których  nazwy zaczynają się od kropki `.' (pliki
              ukryte). Gdy ustawiona na Off, początkowa kropka w nazwie jaka ma być  uzupełniona,
              musi być wpisana przez użytkownika.
       menu-complete-display-prefix (Off)
              Gdy  ustawiona  na  On,  uzupełnianie  menu  wyświetla  wspólny  przedrostek  listy
              możliwych uzupełnień (który może być  pusty)  przed  cyklicznym  przełączaniem  się
              między pozycjami z listy.
       output-meta (Off)
              Jeżeli  ustawione  na  On, readline wyświetla znaki z ustawionym ósmym bitem wprost
              zamiast jako sekwencje specjalne z meta-przedrostkiem. Domyślnie ustawione na  Off,
              ale readline zmieni ustawienie na On jeśli locale zawiera znaki ośmiobitowe.
       page-completions (On)
              Gdy ustawione na On, readline używa wewnętrznego programu wyświetlającego podobnego
              do more, do wyświetlania pełnego ekranu możliwych uzupełnień na raz.
       print-completions-horizontally (Off)
              Jeżeli ustawione na On, readline wyświetla  dopasowane  uzupełnienia  w  kolejności
              alfabetycznej poziomo, zamiast w dół ekranu.
       revert-all-at-newline (Off)
              Gdy  ustawione  na On, readline anuluje wszystkie zmiany w wierszach historii przed
              powrotem, gdy wykonywane jest accept-line. Domyślnie, wiersze historii mogą  zostać
              zmodyfikowane i zachować swe listy anulowań poprzez odwołania do readline.
       show-all-if-ambiguous (Off)
              Zmienia  to  domyślne zachowanie funkcji uzupełniania. Jeżeli jest ustawione na on,
              to słowa mające więcej niż jedno  możliwe  uzupełnienie  powodują,  że  natychmiast
              zostaną podane dopasowania zamiast wyemitowania sygnału dźwiękowego.
       show-all-if-unmodified (Off)
              Zmienna  modyfikuje  domyślne  zachowanie  funkcji uzupełnienia w sposób podobny do
              show-all-if-ambiguous. Gdy jest ustawiona na On, słowa które mają więcej niż  jedno
              możliwe uzupełnienie bez możliwych uzupełnień częściowych (możliwe uzupełnienia nie
              posiadają wspólnego przedrostka), są  wypisywane  natychmiast,  bez  wcześniejszego
              używania brzęczyka.
       show-mode-in-prompt (Off)
              Jeśli  jest  ustawiona na On, dodaje znak na początku znaku zachęty wskazujący tryb
              edycji: emacs (@), wiersz polecenia vi (:) lub tryb wstawiania vi (+).
       skip-completed-text (Off)
              Gdy jest ustawiona na  On,  modyfikuje  domyślne  zachowanie  uzupełniania  gdy  do
              wiersza  wstawiane  jest  pojedyncze  dopasowanie.  Jest  to  aktywne tylko podczas
              przeprowadzania uzupełnienia w  środku  słowa.  Gdy  jest  włączona,  readline  nie
              wstawia  znaków  z  uzupełniania,  które  pasują do znaków w miejscu wprowadzania w
              uzupełnianym słowie, dzięki czemu części słowa za kursorem, nie są duplikowane.
       vi-cmd-mode-string ((cmd))
              Ten łańcuch jest wyświetlany zaraz  po  ostatnim  wierszu  pierwszej  zachęty,  gdy
              aktywny  jest  tryb  edycji  vi  w  trybie poleceń. Wartość jest interpretowana jak
              przypisania klawiszy, tak więc dostępne są standardowe przedrostki meta- i  control
              oraz  sekwencje  ucieczki  korzystające  z  ukośnika.  Sekwencje  ucieczki  \1 i \2
              odpowiednio zaczynają  i  kończą  znaki  niedrukowalne,  co  można  wykorzystać  do
              osadzenia sekwencji kontrolnych terminala w tym łańcuchu.
       vi-ins-mode-string ((ins))
              Ten  łańcuch  jest  wyświetlany  zaraz  po  ostatnim wierszu pierwszej zachęty, gdy
              aktywny jest tryb edycji vi w trybie wstawiania. Wartość  jest  interpretowana  jak
              przypisania  klawiszy, tak więc dostępne są standardowe przedrostki meta- i control
              oraz sekwencje ucieczki  korzystające  z  ukośnika.  Sekwencje  ucieczki  \1  i  \2
              odpowiednio  zaczynają  i  kończą  znaki  niedrukowalne,  co  można  wykorzystać do
              osadzenia sekwencji kontrolnych terminala w tym łańcuchu.
       visible-stats (Off)
              Jeżeli ustawione na On, to przy wyświetlaniu możliwych uzupełnień  do  nazwy  pliku
              zostanie dołączony znak określający typ pliku wskazywany przez stat(2).

   Konstrukcje warunkowe Readline
       Readline  implementuje  udogodnienie  podobne  duchem  do  funkcji  kompilacji  warunkowej
       preprocesora C, pozwalające na wykonywanie  przypisań  klawiszy  i  ustawień  zmiennych  w
       zależności od wyniku testów. Używane są cztery dyrektywy analizatora składni.

       $if    Konstrukcja  $if  pozwala  na wykonanie przypisań klawiszy w oparciu o tryb edycji,
              używany terminal lub aplikację korzystającą z readline. Tekst testu rozciąga się do
              końca wiersza; do jego wydzielenia nie są wymagane żadne znaki.

              mode   Postać  mode=  dyrektywy $if służy do sprawdzania czy readline jest w trybie
                     emacs  czy  vi.  Może  być  wykorzystywana,  na  przykład,  w  połączeniu  z
                     poleceniem  set keymap, do ustawienia przypisań w mapowaniach emacs-standard
                     i emacs-ctlx tylko jeśli readline uruchamia się w trybie emacs.

              term   Postać term= można wykorzystywać do włączenia  specyficznych  dla  terminala
                     przypisań  klawiszy,  być może do przypisania wyjścia dla sekwencji klawiszy
                     funkcyjnych terminala. Słowo po prawej stronie = sprawdzane jest  z  zarówno
                     pełną  nazwą  terminala,  jaki  i  częścią  jego  nazwy  przed  pierwszym -.
                     Umożliwia to, na przykład, dopasowanie przez sun zarówno sun jak i sun-cmd.

              aplikacja
                     Konstrukcja  aplikacja  służy  do  włączania  ustawień   specyficznych   dla
                     aplikacji.  Każdy  program  korzystający z biblioteki readline ustawia nazwę
                     aplikacji (application name), a plik inicjujący może sprawdzić  czy  ma  ona
                     jakąś  szczególną  wartość.   Może to być używane do przypisywania sekwencji
                     klawiszy funkcjom  przydatnym  w  danym  programie.  Na  przykład,  poniższe
                     polecenie  dodaje  sekwencję  klawiszy wykonującą w bash cytowanie bieżącego
                     lub poprzedniego słowa:

                     $if Bash
                     # Cytuj bieżące lub poprzednie słowo
                     "\C-xq": "\eb\"\ef\""
                     $endif

       $endif Polecenie to, jak widać w poprzednim przykładzie, kończy wykonywanie polecenia $if.

       $else  Polecenia  w  tej  gałęzi  dyrektywy  $if  wykonywane  są  gdy  nie  powiedzie  się
              sprawdzenie warunku.

       $include
              Dyrektywa  ta  pobiera jako argument pojedynczą nazwę pliku i odczytuje polecenia i
              przypisania z tego pliku. Na przykład, poniższa dyrektywa odczytałaby /etc/inputrc:

              $include  /etc/inputrc

   Wyszukiwanie
       Readline zapewnia polecenia do wyszukiwania w historii poleceń (zobacz  poniżej  HISTORIA)
       wierszy   zawierających   zadany   łańcuch.   Istnieją  dwa  tryby  wyszukiwania:  krokowy
       (incremental) i nie-niekrokowy (non-incremental).

       Wyszukiwania krokowe rozpoczynają się  przed  zakończeniem  wpisywania  przez  użytkownika
       szukanego  tekstu.   Po  wpisaniu  każdego  znaków  szukanego  łańcucha readline wyświetla
       następną pozycję historii pasującą  do  wpisanego  do  tej  pory  łańcucha.   Wyszukiwanie
       krokowe  wymaga  tylko  tylu  znaków  ile  potrzebne jest do znalezienia pożądanej pozycji
       historii.  Znaki występujące w wartości zmiennej isearch-terminators służą  do  przerwania
       wyszukiwania  krokowego.   Jeżeli  zmienna ta nie ma przypisanej wartości, to wyszukiwanie
       przerywają znaki Escape i Control-J.  Control-G porzuca wyszukiwanie krokowe  i  przywraca
       pierwotny wiersz.  Gdy przerwie się wyszukiwanie, pozycja historii zawierająca poszukiwany
       łańcuch staje się bieżącym wierszem.

       W celu odnalezienia innych pasujących pozycji, należy nacisnąć odpowiednio  Control-S  lub
       Control-R.   Wyszukuje  to  wstecz  lub  w  przód kolejną pasującą do dotychczas wpisanego
       łańcucha pozycję historii.  Wszystkie inne  sekwencje  klawiszy  przypisane  do  polecenia
       readline  przerywają  wyszukiwanie  i  wykonują zadane polecenie.  Na przykład, znak nowej
       linii przerywa wyszukiwanie i akceptuje wiersz, wykonując skutkiem tego polecenie z  listy
       historii.

       Readline pamięta łańcuch użyty w ostatnim wyszukiwaniu krokowym. Jeżeli Control-R zostanie
       naciśnięte dwa razy, bez wprowadzenia pomiędzy naciśnięciami innych  znaków  definiujących
       nowy łańcuch szukania, to wykorzystywany jest uprzednio zapamiętany łańcuch.

       Wyszukiwania  nie-krokowe  czytają  cały  szukany  łańcuch przed rozpoczęciem wyszukiwania
       pasujących wierszy historii. Łańcuch może być wpisany przez użytkownika  lub  być  częścią
       zawartości bieżącego wiersza.

   Nazwy poleceń Readline
       Poniżej  podano  listę  nazw  poleceń  i  domyślnych sekwencji klawiszy, do których są one
       przypisane.   Nazwy  poleceń   bez   towarzyszącej   sekwencji   klawiszy   są   domyślnie
       nieprzypisane.    W  poniższych  opisach,  punkt  oznacza  bieżącą  pozycję  kursora,  zaś
       zaznaczenie do pozycji kursora zapamiętanej  przez  polecenie  set-mark.   Tekst  pomiędzy
       punktem a zaznaczeniem nazywany jest obszarem.

   Polecenia ruchu
       beginning-of-line (C-a)
              Przesuwa na początek bieżącego wiersza.
       end-of-line (C-e)
              Przesuwa na koniec wiersza.
       forward-char (C-f)
              Przesuwa o znak w przód.
       backward-char (C-b)
              Przesuwa o znak wstecz.
       forward-word (M-f)
              Przesuwa  na  koniec  następnego słowa. Słowa złożone są ze znaków alfanumerycznych
              (liter i cyfr).
       backward-word (M-b)
              Przesuwa na początek bieżącego, lub poprzedniego, słowa. Słowa złożone są ze znaków
              alfanumerycznych (liter i cyfr).
       shell-forward-word
              Przesuwa  na  koniec  następnego  słowa  w przód. Słowa są oddzielone niecytowanymi
              metaznakami powłoki.
       shell-backward-word
              Przesuwa na początek bieżącego lub poprzedniego słowa w tył.  Słowa  są  oddzielone
              niecytowanymi metaznakami powłoki.
       clear-screen (C-l)
              Czyści  ekran  pozostawiając bieżący wiersz na górze ekranu. Z argumentem, odświeża
              bieżący wiersz bez czyszczenia ekranu.
       redraw-current-line
              Odświeża bieżący wiersz.

   Polecenia operujące na historii
       accept-line (Newline, Return)
              Akceptuje wiersz bez względu na to, gdzie znajduje się kursor.  Jeżeli  wiersz  ten
              nie  jest  pusty,  to  dodaje  go  do  listy  historii  stosownie do stanu zmiennej
              HISTCONTROL.  Jeżeli wiersz jest zmienionym wierszem historii, to  odtwarza  wiersz
              historii do stanu pierwotnego.
       previous-history (C-p)
              Sprowadza poprzednie polecenie z listy historii, przesuwając się wstecz listy.
       next-history (C-n)
              Ściąga następne polecenie z listy historii, przesuwając się do przodu na liście.
       beginning-of-history (M-<)
              Przesuwa na pierwszy wiersz w historii.
       end-of-history (M->)
              Przesuwa na koniec historii wprowadzania, tj. obecnie wprowadzanego wiersza.
       reverse-search-history (C-r)
              Wyszukuje  wstecz  poczynając  od  bieżącego  wiersza  i  przesuwając  się, w razie
              potrzeby, 'w górę' historii. Jest to wyszukiwanie krokowe.
       forward-search-history (C-s)
              Wyszukuje w przód poczynając od  bieżącego  wiersza  i  przesuwając  się,  w  razie
              potrzeby, 'w dół' historii. Jest to wyszukiwanie krokowe.
       non-incremental-reverse-search-history (M-p)
              Wyszukuje  wstecz  poczynając  od  bieżącego  wiersza  posługując się wyszukiwaniem
              nie-krokowym podanego przez użytkownika łańcucha.
       non-incremental-forward-search-history (M-n)
              Wyszukuje w przód poczynając od  bieżącego  wiersza  posługując  się  wyszukiwaniem
              nie-krokowym podanego przez użytkownika łańcucha.
       history-search-forward
              Wyszukuje  w przód w historii łańcucha znaków pomiędzy początkiem bieżącego wiersza
              a punktem.  Jest to wyszukiwanie nie-krokowe.
       history-search-backward
              Wyszukuje wstecz w historii łańcucha znaków pomiędzy początkiem bieżącego wiersza a
              bieżącą pozycją kursora (punkt).  Jest to wyszukiwanie nie-krokowe.
       yank-nth-arg (M-C-y)
              Wstawia   pierwszy   argument   poprzedniego   polecenia  (zwykle  drugie  słowo  z
              poprzedniego wiersza) w punkt (bieżącą pozycję kursora). Z  argumentem  n,  wstawia
              n-te  słowo  poprzedniego  polecenia (słowa w poprzednim poleceniu zaczynają się od
              słowa 0). Argument ujemny wstawia n-te słowo od końca  poprzedniego  polecenia.  Po
              obliczeniu  argumentu n, jest on wyodrębniany w taki sposób, jak gdyby podano opcję
              interpretowania historii "!n".
       yank-last-arg (M-., M-_)
              Wstawia ostatni argument poprzedniego polecenia (ostatnie słowo poprzedniej pozycji
              historii). Z argumentem numerycznym, zachowuje się dokładnie tak, jak yank-nth-arg.
              Kolejne wywołania yank-last-arg przesuwają wstecz  listy  historii,  wstawiając  po
              kolei ostatni argument (lub słowo określone przez argument do pierwszego wywołania)
              każdego wiersza. Każdy argument numeryczny podany do pomyślnego  wywołania  określa
              kierunek  ruchu  w historii. Argument ujemny zmienia kierunek poruszania się (w tył
              lub w  przód).  Możliwości  interpretacji  historii  są  używane  do  wyodrębnienia
              ostatniego słowa, podobnie jak gdyby wybrano interpretację historii za pomocą "!$".
       shell-expand-line (M-C-e)
              Interpretuj  wiersz,  jak  czyni  to  powłoka.  Wykonuje  to aliasy i interpretację
              historii, jak również interpretację słów  powłoki.  Zobacz  INTERPRETACJA  HISTORII
              poniżej.
       history-expand-line (M-^)
              Wykonuje   interpretację  powłoki  w  odniesieniu  do  bieżącego  wiersza.   Zobacz
              INTERPRETACJA HISTORII poniżej.
       magic-space
              Wykonuje interpretację powłoki w odniesieniu do bieżącego wiersza i wstawia spację.
              Zobacz INTERPRETACJA HISTORII poniżej.
       alias-expand-line
              Wykonuje  interpretację  aliasów w odniesieniu do bieżącego wiersza.  Zobacz ALIASY
              powyżej.
       history-and-alias-expand-line
              Wykonuje interpretację historii i aliasów w odniesieniu do bieżącego wiersza.
       insert-last-argument (M-., M-_)
              Synonim yank-last-arg.
       operate-and-get-next (C-o)
              Akceptuje do  wykonania  bieżący  wiersz  i  ściąga  do  edycji  następny  względem
              bieżącego wiersz z historii. Argumenty są ignorowane.
       edit-and-execute-command (C-xC-e)
              Przywołuje  edytor  w  bieżącym  wierszu  poleceń  i  wykonuje wynik jako polecenie
              powłoki. Bash stara się wywołać  $VISUAL,  $EDITOR  i  emacs  jako  edytor,  w  tej
              kolejności.

   Polecenia zmiany tekstu
       koniec-pliku (zwykle C-d)
              Znak  wskazujący  koniec  pliku,  jak ustawiony np. przez ``stty''.  Jeśli znak tej
              jest odczytany, gdy nie ma żadnych innych znaków w wierszu, a punkt jest początkiem
              wiersza, Readline interpretuje to jako koniec wejścia i zwraca EOF.
       delete-char (C-d)
              Usuwa  znak w tym punkcie. Jeżeli funkcja jest przypisana do tego samego znaku, jak
              znak EOF tty, jak często bywa z C-d, efekt jest opisany powyżej.
       backward-delete-char (Rubout)
              Usuwa znak przed kursorem. Jeżeli podano argument  numeryczny,  zachowuje  usunięty
              tekst na stosie usunięć.
       forward-backward-delete-char
              Usuwa  znak  pod  kursorem,  chyba że kursor znajduje się na końcu wiersza, wówczas
              usuwany jest znak przed kursorem.
       quoted-insert (C-q, C-v)
              Dodaje następny znak do wiersza dosłownie. W ten sposób wstawiane są  znaki  takie,
              jak na przykład C-q.
       tab-insert (C-v TAB)
              Wstawia znak tabulacji.
       self-insert (a, b, A, 1, !, ...)
              Wstawia wpisany znak.
       transpose-chars (C-t)
              Zamienia   miejscami   znak  sprzed  punktu  ze  znakiem  w  punkcie,  równocześnie
              przesuwając punkt w przód. Jeżeli punkt  jest  na  końcu  wiersza  to  zamienia  to
              miejscami dwa znaki przed punktem. Argumenty ujemne nie skutkują.
       transpose-words (M-t)
              Zamienia   miejscami   słowo  sprzed  punktu  ze  słowem  za  punktem,  przesuwając
              równocześnie punkt za przesunięte sprzed niego słowo.  Jeżeli punkt jest  na  końcu
              wiersza to zamienia to miejscami dwa ostanie słowa wiersza.
       upcase-word (M-u)
              Zamienia  na  wielkie  litery  bieżące  (lub  następne) słowo. Z argumentem ujemnym
              zamienia na wielkie litery poprzednie słowo, ale nie przesuwa punktu.
       downcase-word (M-l)
              Zamienia na małe litery bieżące (lub następne) słowo. Z argumentem ujemnym zamienia
              na małe litery poprzednie słowo, ale nie przesuwa punktu.
       capitalize-word (M-c)
              Zamienia  na kapitaliki (pierwsza litera wielka, pozostałe małe) bieżące (następne)
              słowo. Z argumentem ujemnym  zamienia  na  kapitaliki  poprzednie  słowo,  ale  nie
              przesuwa punktu.
       overwrite-mode
              Przełącza  tryb nadpisywania. Z jawnym, dodatnim argumentem liczbowym, przełącza do
              trybu nadpisywania. Z jawnym, niedodatnim argumentem liczbowym, przełącza do  trybu
              wstawiania. Polecenie dotyczy jedynie trybu emacs, tryb vi nadpisuje w inny sposób.
              Każde odwołania do readline()  jest  uruchamiane  w  trybie  wstawiania.  W  trybie
              nadpisywania, znaki przypisane do self-insert zastępują tekst pod kursorem, zamiast
              przesuwać go w prawą stronę. Znaki  przypisane  do  backward-delete-char  zastępują
              znak przed kursorem spacją. Domyślnie, to polecenie nie jest przypisane.

   Usuwanie i wklejanie
       kill-line (C-k)
              Usuwa tekst od punktu do końca wiersza.
       backward-kill-line (C-x Rubout)
              Usuwa wstecz do początku wiersza.
       unix-line-discard (C-u)
              Usuwa  wstecz  od  punktu  do  początku  wiersza. Usuwany tekst jest zachowywany na
              stosie usunięć.
       kill-whole-line
              Usuwa wszystkie znaki bieżącego wiersza, bez względu na położenie punktu.
       kill-word (M-d)
              Usuwa od punktu do końca bieżącego słowa, lub  jeśli  użyte  pomiędzy  słowami,  do
              końca następnego słowa. Granice słów są takie same, jak używane przez forward-word.
       backward-kill-word (M-Rubout)
              Usuwa  słowo  sprzed  punktu.  Granice  słów  są  takie  same,  jak  używane  przez
              backward-word.
       shell-kill-word
              Usuwa od kursora do końca bieżącego słowa lub, jeśli kursor znajduje  się  pomiędzy
              słowami,  do  końca następnego słowa. Granice słów są takie same, jak używane przez
              shell-forward-word.
       shell-backward-kill-word
              Usuwa  słowo  sprzed  punktu.  Granice  słów  są  takie  same,  jak  używane  przez
              shell-backward-word.
       unix-word-rubout (C-w)
              Usuwa  słowo sprzed punktu, jako separatora słów używając białych znaków.  Usunięty
              tekst zachowywany jest na stosie usunięć.
       unix-filename-rubout
              Usuwa  słowo  sprzed  punktu,  jako  separatora  słów  używając  białych  znaków  i
              ukośnika.Usunięty tekst zachowywany jest na stosie usunięć.
       delete-horizontal-space (M-\)
              Usuwa wszystkie spacje i tabulatory wokół punktu.
       kill-region
              Usuwa tekst w bieżącym obszarze.
       copy-region-as-kill
              Kopiuje tekst obszaru do bufora usuwania.
       copy-backward-word
              Kopiuje  słowo  sprzed  punktu do bufora usuwania.  Granice słów są takie same, jak
              dla backward-word.
       copy-forward-word
              Kopiuje słowo występujące po punkcie do bufora usuwania.   Granice  słów  są  takie
              same, jak dla forward-word.
       yank (C-y)
              Wkleja wierzchołek stosu usunięć do bufora w punkcie (w miejscu kursora).
       yank-pop (M-y)
              Obraca  stos usunięć i wkleja nowy wierzchołek. Działa tylko następując po yank lub
              yank-pop.

   Argumenty numeryczne
       digit-argument (M-0, M-1, ..., M--)
              Dodaje tę cyfrę do już składanego argumentu  lub  rozpoczyna  nowy  argument.   M--
              rozpoczyna argument ujemny.
       universal-argument
              Jest  to  inna metoda podawania argumentu.  Jeżeli po tym poleceniu występuje jedna
              lub więcej cyfr, z opcjonalnym początkowym znakiem minus,  to  cyfry  te  definiują
              argument.    Jeżeli   po   poleceniu   występują   cyfry,   to  powtórne  wykonanie
              universal-argument kończy  argument  numeryczny,  ale  w  przeciwnym  wypadku  jest
              ignorowane.  W przypadku specjalnym, jeżeli bezpośrednio po tym poleceniu występuje
              znak nie będący ani cyfrą ani znakiem minus, to  argument  licznik  dla  następnego
              polecenia  mnożony  jest  przez cztery.  Argument licznik [zwykle powtórzeń] wynosi
              początkowo cztery, toteż wykonanie tej funkcji po raz pierwszy  nadaje  mu  wartość
              cztery, po raz drugi szesnaście, i tak dalej.

   Uzupełnianie
       complete (TAB)
              Usiłuje przeprowadzić uzupełnianie tekstu przed punktem.  Bash próbuje uzupełniania
              traktując tekst kolejno: jako zmienną  (jeżeli  tekst  zaczyna  się  od  $),  nazwę
              użytkownika (jeśli tekst zaczyna się od ~), nazwę hosta (jeśli tekst zaczyna się od
              @) lub polecenie (łącznie z aliasami i funkcjami). Jeżeli żadne  z  powyższych  nie
              daje dopasowania, to próbowane jest uzupełnianie nazw plików.
       possible-completions (M-?)
              Pokazuje możliwe uzupełnienia tekstu przed punktem.
       insert-completions (M-*)
              Wstawia  przed  punktem wszystkie uzupełnienia tekstu, które zostałyby wygenerowane
              przez possible-completions.
       menu-complete
              Podobne do complete, ale zastępuje słowo, jakie ma zostać  uzupełnione  pojedynczym
              uzupełnieniem  z  listy  możliwych.   Powtarzane  wykonanie  menu-complete powoduje
              krokowe przechodzenie przez listę możliwych uzupełnień i wstawianie każdego z  nich
              po  kolei  (zamiast uzupełnianego słowa).  Na końcu listy uzupełnień emitowany jest
              sygnał dźwiękowy (zależny od ustawienia bell-style) i  przywracany  jest  pierwotny
              tekst.   Argument  n przesuwa n pozycji w przód na liście dopasowań; do przesuwania
              się wstecz można użyć argumentu ujemnego. Polecenie w zamierzeniu ma być przypisane
              do klawisza TAB, ale domyślnie nie jest przypisane.
       menu-complete-backward
              Podobne   do  menu-complete,  ale  przemieszcza  się  wstecz  po  liście  możliwych
              uzupełnień, identycznie gdyby menu-complete podano ujemny  argument.  To  polecenie
              jest domyślnie nieprzypisane.
       delete-char-or-list
              Usuwa  znak  pod  kursorem,  jeśli  nie  jest  to początek bądź koniec wiersza (jak
              delete-char). Na końcu wiersza, zachowuje się identycznie jak possible-completions.
              To polecenie jest domyślnie nieprzypisane.
       complete-filename (M-/)
              Usiłuje wykonać uzupełnianie nazw plików na tekście sprzed kursora.
       possible-filename-completions (C-x /)
              Pokazuje możliwe uzupełnienia tekstu sprzed kursora, traktując go jak nazwę pliku.
       complete-username (M-~)
              Usiłuje  wykonać  uzupełnianie  tekstu  sprzed  kursora,  traktując  go  jak  nazwę
              użytkownika.
       possible-username-completions (C-x ~)
              Pokazuje możliwe  uzupełnienia  tekstu  sprzed  kursora,  traktując  go  jak  nazwę
              użytkownika.
       complete-variable (M-$)
              Usiłuje  wykonać  uzupełnianie  tekstu  sprzed  kursora,  traktując  go jak zmienną
              powłoki.
       possible-variable-completions (C-x $)
              Pokazuje możliwe uzupełnienia tekstu  sprzed  kursora,  traktując  go  jak  zmienną
              powłoki.
       complete-hostname (M-@)
              Usiłuje wykonać uzupełnianie tekstu sprzed kursora, traktując go jak nazwę hosta.
       possible-hostname-completions (C-x @)
              Pokazuje możliwe uzupełnienia tekstu sprzed kursora, traktując go jak nazwę hosta.
       complete-command (M-!)
              Usiłuje   uzupełnić   tekst  sprzed  punktu,  traktując  go  jak  nazwę  polecenia.
              Uzupełnianie  polecenia  próbuje  dopasować  tekst   kolejno   do   aliasów,   słów
              zastrzeżonych,  funkcji powłoki, poleceń wbudowanych powłoki i wreszcie nazw plików
              wykonywalnych.
       possible-command-completions (C-x !)
              Pokazuje możliwe  uzupełnienia  tekstu  sprzed  kursora,  traktując  go  jak  nazwę
              polecenia.
       dynamic-complete-history (M-TAB)
              Usiłuje  uzupełnić  tekst  sprzed kursora, w celu odnalezienia możliwych uzupełnień
              porównując go z wierszami listy historii.
       dabbrev-expand
              Usiłuje wykonać uzupełnienie menu na tekście sprzed kursora,  w  celu  odnalezienia
              możliwych uzupełnień porównując go z wierszami listy historii.
       complete-into-braces (M-{)
              Wykonuje  uzupełnianie  nazwy  pliku  i  wstawia listę możliwych uzupełnień ujętą w
              nawiasy  klamrowe,  tak  że  jest  ona  dostępna  dla   powłoki   (zobacz   powyżej
              Interpretacja nawiasów).

   Makra klawiaturowe
       start-kbd-macro (C-x ()
              Rozpoczyna zachowywanie wpisywanych znaków w bieżącym makrze klawiaturowym.
       end-kbd-macro (C-x ))
              Zatrzymuje  zachowywanie  wpisywanych  znaków  w  bieżącym  makrze  klawiaturowym i
              przechowuje definicję.
       call-last-kbd-macro (C-x e)
              Ponownie wykonuje zdefiniowane makro klawiaturowe, powodując pojawianie się  znaków
              makra tak, jakby zostały wpisane z klawiatury.
       print-last-kbd-macro ()
              Wypisuje ostatnie makro klawiaturowe, w formacie przeznaczonym do pliku inputrc.

   Różne
       re-read-init-file (C-x C-r)
              Odczytuje  zawartość  pliku  inputrc i dołącza wszystkie znalezione tam przypisania
              klawiszy i zmiennych.
       abort (C-g)
              Zaniechuje bieżącego polecenia edycji i emituje sygnał dźwiękowy terminala (zgodnie
              z ustawieniami bell-style).
       do-uppercase-version (M-a, M-b, M-x, ...)
              Jeżeli  poprzedzony przedrostkiem meta znak x jest małą literą, uruchamia plecenie,
              które jest przypisane do odpowiedniej wielkiej litery.
       prefix-meta (ESC)
              Poprzedza przedrostkiem meta następny wpisany znak.  ESC f jest równoważne Meta-f.
       undo (C-_, C-x C-u)
              Krokowe cofnięcie operacji, pamiętane odrębnie dla każdego wiersza.
       revert-line (M-r)
              Cofa wszystkie zmiany wykonane na tym wierszu. Podobne do wykonania polecenia  undo
              wystarczająco wiele razy, by przywrócić wiersz do stanu początkowego.
       tilde-expand (M-&)
              Wykonuje interpretację tyldy w odniesieniu do bieżącego słowa.
       set-mark (C-@, M-<spacja>)
              stawia  znacznik  (mark)  w  bieżącym  punkcie.  Jeżeli podano argument numeryczny,
              znacznik jest ustawiany na takiej pozycji.
       exchange-point-and-mark (C-x C-x)
              Zamień  punkt  ze  znacznikiem.  Aktualna  pozycja  kursora   ustawiana   jest   na
              zapamiętaną, a dotychczasowa pozycja zachowywana jako znacznik.
       character-search (C-])
              Odczytywany  jest  znak  a  punkt  przesuwa się na następne wystąpienie tego znaku.
              Licznik ujemny wyszukuje poprzednie wystąpienia.
       character-search-backward (M-C-])
              Odczytywany jest znak a punkt przesuwa się na poprzednie  wystąpienie  tego  znaku.
              Licznik ujemny wyszukuje kolejne wystąpienia.
       skip-csi-sequence
              Odczytuje  wystarczająco  wiele  znaków,  aby  pobrać sekwencje wielu klawiszy, np.
              zdefiniowaną przez klawisze takie jak Home i End.  Takie  sekwencje  zaczynają  się
              znacznikiem  sekwencji  kontrolnej  (Control  Sequence  Indicator  - CSI), z reguły
              ESC-[. Jeśli taka sekwencja jest przypisana do "\[", to klawisze wchodzące w  skład
              tej  sekwencji  nie  będą  działać (chyba że zostały jawnie przypisane do polecenia
              readline) zamiast wstawiać niepowiązane znaki do bufora edycyjnego.  Domyślnie,  to
              polecenie  jest  nieprzypisane,  ale  przypisanie powinno przeważnie odnosić się do
              ESC-[.
       insert-comment (M-#)
              Bez argumentu numerycznego, na początek bieżącego wiersza  wstawiana  jest  wartość
              zmiennej  comment-begin  readline.  Jeśli  podano numeryczny argument, to polecenia
              działa jak przełącznik: jeśli znaki na początku  wiersza  nie  pasują  do  wartości
              comment-begin,   to   wartość   jest   wstawiana,  w  przeciwnym  wypadku  znaki  w
              comment-begin są usuwane z początku każdego wiersza. W każdym przypadku wiersz jest
              akceptowany   tak,   jakby   wprowadzono   znak   nowej  linii.   Domyślna  wartość
              comment-begin powoduje, że polecenie to czyni bieżący wiersz  komentarzem  powłoki.
              Jeśli  numeryczny  argument  powoduje  usunięcie  znaku komentarza, to dany wiersze
              będzie wykonany przez powłokę.
       glob-complete-word (M-g)
              Słowo sprzed kursora jest traktowane  jako  wzorzec  rozwijania  nazw  plików,  bez
              jawnego   dodania   gwiazdki   (asterysku).   Ten  wzorzec  może  zostać  użyty  do
              wygenerowania listy pasujących nazw plików do możliwych uzupełnień.
       glob-expand-word (C-x *)
              Słowo sprzed kursora traktowane jest jak wzorzec rozwijania nazw plików i wstawiana
              jest  lista  pasujących  nazw,  zastępując  słowo-wzorzec.  Jeśli podano numeryczny
              argument, to przed rozwijaniem nazw plików dodawana jest gwiazdka (asterysk).
       glob-list-expansions (C-x g)
              Wyświetlana jest lista rozwinięć, jakie zostałyby utworzone przez glob-expand-word,
              a  wiersz  jest  ponownie  wyświetlany.  Jeśli podano numeryczny argument, to przed
              rozwijaniem nazw plików dodawana jest gwiazdka (asterysk).
       dump-functions
              Wypisuje do strumienia wyjściowego readline wszystkie  funkcje  i  ich  przypisania
              klawiszy.  Jeżeli  podano  argument  numeryczny,  wyjście  jest  formatowane w taki
              sposób, by można zrobić je częścią pliku inputrc.
       dump-variables
              Wypisuje do strumienia wyjściowego readline wszystkie ustawialne zmienne readline i
              ich  wartości.  Jeżeli  podano argument numeryczny, wyjście jest formatowane w taki
              sposób, by można zrobić je częścią pliku inputrc.
       dump-macros
              Wypisuje wszystkie sekwencje klawiszy readline przypisane do makr i łańcuchy  jakie
              dają  w wyniku.  Jeżeli podano argument numeryczny, wyjście jest formatowane w taki
              sposób, by można zrobić je częścią pliku inputrc.
       display-shell-version (C-x C-v)
              Wyświetla informację o wersji aktualnego egzemplarza bash.

   Programowalne uzupełnianie
       Gdy następuje próba uzupełnienia słowa dla argumentu polecenia, dla  którego  zdefiniowano
       specyfikację  uzupełniania  (completion  specification,  compspec) przy pomocy wbudowanego
       polecenia complete (zobacz WBUDOWANE POLECENIA  POWŁOKI  poniżej),  wywoływane  są  usługi
       programowalnego uzupełniania.

       Po  pierwsze,  identyfikowana  jest  nazwa polecenia. Jeśli słowo polecenia jest łańcuchem
       pustym (próba uzupełniania następuje na początku  pustego  wiersza),  używany  jest  każdy
       compspec  zdefiniowany  opcją  -E  do  complete.  Jeżeli  dla  tego polecenia zdefiniowano
       compspec, to compspec jest używane do utworzenia listy możliwych uzupełnień słowa.  Jeżeli
       słowo  polecenia  jest pełną nazwą ścieżkową, to najpierw szukane jest compspec dla pełnej
       nazwy.  Jeśli nie zostanie odnalezione, to następuje próba znalezienia compspec dla części
       występującej po ostatnim ukośniku. Jeśli powyższe wyszukiwania nie dają wyniku w compspec,
       to jako domyślne używane są compspec zdefiniowane opcją -D do complete.

       Po odnalezieniu compspec, jest ono używane do utworzenia listy  pasujących  słów.   Jeżeli
       compspec  nie  zostało  znalezione,  to  wykonywane  jest domyślne uzupełnianie basha, jak
       opisano powyżej w Uzupełnianie.

       Na początek, używane są akcje określone przez compspec. Zwracane są wyłącznie  dopasowania
       poprzedzone  dopasowywanym  słowem.   Gdy  do uzupełniania nazw plików lub katalogów użyto
       opcji -f lub -d, do filtrowania dopasowań wykorzystywana jest zmienna powłoki FIGNORE.

       W następnej  kolejności  tworzone  są  ewentualne  uzupełnienia  określone  przez  wzorzec
       rozwinięcia  nazw  plików  opcji  -G.   Słowa  tworzone przez wzorzec nie muszą pasować do
       uzupełnianego  słowa.   Zmienna  powłoki  GLOBIGNORE  nie  jest  używana  do   filtrowania
       dopasowań, ale zmienna FIGNORE jest używana.

       Następnie,  brany  jest  pod  uwagę  łańcuch  podany jako argument opcji -W.  Łańcuch jest
       najpierw rozbijany przy zastosowaniu znaków ze zmiennej specjalnej IFS  jako  separatorów.
       Honorowane   jest  cytowanie  powłoki.   Później  każde  ze  słów  interpretowane  jest  z
       wykorzystaniem  interpretacji  nawiasów,  interpretacji  tyld,  podstawiania   parametrów,
       interpretacji  zmiennych  i  wyrażeń  arytmetycznych  i  podstawiania wyników poleceń, jak
       opisano powyżej w  sekcji  INTERPRETACJA.   Wyniki  są  rozbijane  z  zastosowaniem  reguł
       opisanych  powyżej  w  sekcji  Podział  na  słowa.   Wyniki  interpretacji są dopasowywane
       przedrostkiem z uzupełnianym słowem, a pasujące słowa stają się możliwymi uzupełnieniami.

       Po utworzeniu tych dopasowań, wywoływana jest funkcja lub polecenie określone opcjami -F i
       -C.  Podczas wywoływania polecenia czy funkcji, zmiennym COMP_LINE, COMP_POINT, COMP_KEY i
       COMP_TYPE przypisywane są wartości, jak opisano  to  powyżej  w  sekcji  Zmienne  powłoki.
       Jeżeli  wywoływana  jest  funkcja  powłoki,  ustawiane  są  również  zmienne  COMP_WORDS i
       COMP_CWORD.  Kiedy wywoływana jest funkcja czy polecenie, pierwszym argumentem ($1)  staje
       się  nazwa  polecenia,  którego  argumenty  są  uzupełniane,  drugim  argumentem  ($2)  --
       uzupełniane słowo, a trzecim słowem ($3) poprzedzające w wierszu poleceń  słowo  aktualnie
       uzupełniane.   Nie  jest  wykonywane żadne filtrowanie utworzonych uzupełnień stosownie do
       uzupełnianego słowa. Funkcja czy polecenie mają pełną swobodę tworzenia dopasowań.

       W pierwszej kolejności wywoływana jest funkcja określona przez -F.  Do tworzenia dopasowań
       może  ona  korzystać z dowolnych możliwości powłoki, łącznie z opisanym poniżej poleceniem
       wbudowanym compgen. Funkcja musi  umieścić  możliwe  uzupełnienia  w  zmiennej  tablicowej
       COMPREPLY, jedno na element tablicy.

       Następnie,   wywoływane  jest  polecenie  określone  opcją  -C,  działające  w  środowisku
       równoważnym podstawianiu poleceń.  Powinno ono  wypisać  listę  uzupełnień,  po  jednym  w
       wierszu,  na  standardowe  wyjście.   Jeżeli  jest to niezbędne, do utworzenia znaku nowej
       linii można użyć odwróconego ukośnika.

       Po utworzeniu wszelkich możliwych uzupełnień, do listy tej stosowany jest filtr  określony
       opcją -X.  Filtr jest takim wzorcem, jak używany przy rozwijaniu nazw ścieżkowych.  Znak &
       we wzorcu  zastępowany  jest  tekstem  uzupełnianego  słowa.   Literał  &  można  otrzymać
       poprzedzając  go  odwrotnym  ukośnikiem;  odwrotny  ukośnik  zostanie usunięty przed próbą
       dopasowania.  Wszystkie uzupełnienia pasujące do wzorca będą usunięte z listy.  Początkowy
       !  daje  zaprzeczenie  wzorca.  Będą  wówczas usuwane uzupełnienia nie pasujące do wzorca.
       Jeśli włączona  jest  opcja  powłoki  nocasematch,  to  dopasowanie  jest  wykonywane  bez
       uwzględniania wielkości liter.

       Na  koniec,  do  każdego  elementu  listy  dodawane  są przedrostek i przyrostek określone
       opcjami -P i -S, a wynik zwracany jest do kodu uzupełniania readline jako lista  możliwych
       uzupełnień.

       Jeśli   poprzednio  zastosowane  działania  nie  utworzyły  żadnych  dopasowań,  zaś  przy
       definiowaniu compspec podano opcję -o dirnames  polecenia  complete,  to  dokonywana  jest
       próba uzupełnienia nazwy katalogu.

       Jeśli  do  complete  podano  opcję -o plusdir gdy istnieje zdefiniowane compspec, to próba
       dopasowania nazw katalogów jest przeprowadzana, a ewentualne dopasowania  są  dodawane  do
       wyników innych akcji.

       Domyślnie,  jeżeli  znaleziono  compspec,  to  cokolwiek ono utworzy zwracane jest do kodu
       uzupełniającego jako  pełny  zestaw  możliwych  uzupełnień.   Nie  są  próbowane  domyślne
       uzupełnienia bash, a domyślne uzupełnianie nazw ścieżkowych przez readline jest wyłączone.
       Jeśli przy definiowaniu compspec podano opcję  -o  bashdefault,  to  jeżeli  compspec  nie
       utworzy  żadnych  uzupełnień,  wykonane  zostanie  domyślne  uzupełnienia bash. Jeśli przy
       definiowaniu compspec podano opcję -o default polecenia complete, to jeżeli  compspec  nie
       utworzy  żadnych  uzupełnień, wykonane zostanie domyślne uzupełnianie z readline (i, jeśli
       próbowano domyślnych uzupełnień bash, także one).

       Gdy compspec informuje o żądaniu  uzupełnienia  nazwy  katalogu,  funkcje  programowalnego
       uzupełnienia  wymuszają  na  readline  dodanie  ukośnika,  do  uzupełnianych nazw będących
       dowiązaniami  symbolicznymi  do  katalogów,  które  są   przedmiotem   wartości   zmiennej
       mark-direstories  readline,  niezależnie od ustawienia zmiennej mark-symlinked-directories
       readline.

       Istnieje  pewna  obsługa  uzupełnień  modyfikowanych  dynamicznie.  Jest  to   szczególnie
       użyteczne  w kombinacji z domyślnym uzupełnianiem z opcją complete -D. W przypadku funkcji
       powłoki, wykonywanych jako odpowiedzialne za uzupełnianie, możliwe jest poinformowanie  że
       uzupełnienie  powinno  być ponowione za pomocą kodu zakończenia równego 124. Jeśli funkcja
       powłoki zwróci 124 i zmieni powiązany  compspec  poleceniem,  którego  próbę  uzupełnienia
       podjęto  (podanego  jako  pierwszy  argument  gdy  funkcja jest wykonywana), programowalne
       uzupełnianie rozpoczyna od początku, próbując znaleźć nowy compspec dla polecenia. Pozwala
       na  ustawianie uzupełnień budowanych dynamicznie po wykonanej próbie uzupełnienia, zamiast
       ładowania ich wszystkich naraz.

       Przykładowo,  przyjmując  że  istnieje  biblioteka  składająca  się  z   compspec,   każda
       przechowywana  w  pliku  odpowiadającym  nazwie polecenia, to następująca domyślna funkcja
       uzupełnienia załaduje uzupełnienia dynamicznie:

       _completion_loader()
       {
            . "/etc/bash_completion.d/$1.sh" >/dev/null 2>&1 && return 124
       }
       complete -D -F _completion_loader -o bashdefault -o default

HISTORIA

       Jeżeli włączona jest opcja -o history  wbudowanego  polecenia  set,  to  powłoka  zapewnia
       dostęp  do  historii  poleceń,  listy  poleceń poprzednio wprowadzonych.  Wartość zmiennej
       HISTSIZE wykorzystywana jest  jako  liczba  poleceń  do  zachowania  na  liście  historii.
       Zachowywany  jest  tekst  ostatnich  HISTSIZE poleceń (domyślnie 500). Powłoka przechowuje
       każde polecenie na liście przed podstawieniem  wartości  parametrów  i  zmiennych  (zobacz
       powyżej  INTERPRETACJA),  ale  przed  wykonaniem  interpretacji  historii, w zależności od
       wartości zmiennych powłoki HISTIGNORE i HISTCONTROL.

       Przy uruchamianiu, historia inicjowana jest z pliku o nazwie  wskazanej  zmienną  HISTFILE
       (domyślnie  ~/.bash_history).  Plik  o  nazwie  wziętej z wartości HISTFILE jest obcinany,
       jeśli zachodzi potrzeba, by  zawierał  nie  więcej  wierszy  niż  określono  to  wartością
       zmiennej HISTFILESIZE. Jeśli HISTFILESIZE jest nieustawione lub ustawione na zero, wartość
       nienumeryczną lub wartość numeryczną mniejszą od zera, plik historii  nie  jest  obcinany.
       Gdy  plik historii jest odczytywany, wiersze zaczynające się od znaku komentarza historii,
       po którym występuje bezpośrednio  cyfra,  są  interpretowane  jako  czasy  poprzedzającego
       wcześniejszego  historii.  Czasy  te  mogą  być  opcjonalnie  wyświetlane, w zależności od
       wartości zmiennej HISTTIMEFORMAT. Podczas kończenia pracy  powłoki  z  włączoną  historią,
       ostatnie  $HISTSIZE wierszy kopiowane jest z listy historii do $HISTFILE.  Jeżeli włączona
       jest opcja powłoki histappend (zobacz opis shopt  w  sekcji  WBUDOWANE  POLECENIA  POWŁOKI
       poniżej),  to  wiersze  są  dodawane  na  koniec  pliku  historii, w przeciwnym razie plik
       historii jest nadpisywany.  Jeżeli HISTFILE nie jest ustawione lub plik historii nie  daje
       się  zapisać,  to  historia  nie  jest  zachowywana.  Jeśli  zmienna  HISTTIMEFORMAT  jest
       ustawiona, to pieczątki czasowe oznaczone znakiem komentarza  historii  są  zapisywane  do
       pliku  historii, tak więc mogą być one zachowywane pomiędzy sesjami powłoki. Znak historii
       komentarza jest wykorzystywany w celu odróżnienia pieczątek czasowych  od  innych  wierszy
       historii.  Po  zapisaniu,  plik  historii  jest  obcinany,  by  nie  zawierał  więcej  niż
       HISTFILESIZE wierszy. Jeśli HISTFILESIZE nie jest ustawione albo jest ustawione  na  null,
       wartość  nienumeryczną  lub wartość numeryczną mniejszą od zera, to plik historii nie jest
       obcinany.

       Do edycji lub ponownego wykonania części listy  historii  można  korzystać  z  wbudowanego
       polecenia  fc (zobacz WBUDOWANE POLECENIA POWŁOKI poniżej).  Wbudowanego polecenia history
       można używać do wyświetlania lub zmiany listy historii  i  manipulacji  plikiem  historii.
       Podczas  posługiwania się edycją wiersza poleceń, w każdym z trybów edycji umożliwiających
       dostęp do listy historii, dostępne są polecenia przeszukiwania.

       Powłoka umożliwia kontrolę nad tym, jakie  polecenia  są  zachowywane  na  liście.   Można
       ustawić zmienne HISTCONTROL i HISTIGNORE, co spowoduje, że powłoka będzie zachowywać tylko
       podzbiór wprowadzonych poleceń.  Opcja powłoki cmdhist, jeżeli jest włączona, powoduje, że
       powłoka  będzie  usiłować  zachować  każdy  wiersz  polecenia wielowierszowego w tej samej
       pozycji historii, dodając, gdzie jest  to  niezbędne,  średniki,  by  zachować  poprawność
       składni.   Opcja  powłoki  lithist  powoduje,  że  powłoka  będzie  zachowywać polecenia z
       osadzonymi znakami nowej linii zamiast średników. Zobacz opis wbudowanego shopt poniżej, w
       sekcji  WBUDOWANE  POLECENIA POWŁOKI, gdzie znajdziesz informacje o ustawianiu i kasowaniu
       opcji powłoki.

INTERPRETACJA HISTORII

       Powłoka obsługuje funkcję interpretacji historii, podobną do interpretacji historii w csh.
       Ta  sekcja  opisuje  dostępne  możliwości  składni. Funkcja ta jest domyślnie włączona dla
       powłok interaktywnych i może być wyłączona przy pomocy opcji +H wbudowanego polecenia  set
       (zobacz  poniżej  WBUDOWANE  POLECENIA  POWŁOKI).   Powłoki nie-interaktywne domyślnie nie
       wykonują interpretacji historii.

       Interpretacja historii  wprowadza  słowa  z  listy  historii  do  strumienia  wejściowego,
       ułatwiając powtarzanie poleceń lub poprawianie szybkie błędów w poprzednich poleceniach.

       Interpretacja  historii  przeprowadzana jest bezpośrednio po przeczytaniu pełnego wiersza,
       przed jego podziałem na słowa przez powłokę.  Odbywa się w dwu częściach.   Pierwszą  jest
       określenie,  który  wiersz  z  listy historii ma zostać użyty podczas podstawiania.  Drugą
       stanowi wybór części tego wiersza do włączenia w bieżący.  Wybrany z historii wiersz  jest
       zdarzeniem (event), a jego części na których wykonywane są działania są słowami.  Dostępne
       są różne modyfikatory do manipulowania wybranymi słowami.  Wiersz rozbijany jest na  słowa
       w  ten  sam sposób jak podczas odczytu wejścia, tak że kilka słów separowanych metaznakami
       ujętych  w  cudzysłowy  traktowanych  jest  jak  jedno  słowo.    Interpretacja   historii
       wprowadzana  są  obecnością  znaku  rozwijającego historię, którym domyślnie jest !.  Znak
       rozwijający historię cytować mogą wyłącznie odwrotny ukośnik (\) i pojedyncze  cudzysłowy,
       lecz  znak  rozwijający  historię  jest  traktowany  jako  cytowany  również  wówczas, gdy
       występuje bezpośrednio przed kończącym cudzysłowem, przy cytowaniu  za  pomocą  podwójnych
       cudzysłowów.

       Następujące   znaki   powstrzymują   interpretację   historii   jeśli  zostaną  znalezione
       bezpośrednio za znakiem interpretacji historii,  nawet  jeśli  jest  niecytowany:  spacja,
       tabulacja,  znak  nowego  wiersza,  znak powrotu karetki i =. Jeśli włączono opcję powłoki
       extglob, to ( również zapobiegnie interpretacji.

       Kilka opcji powłoki ustawianych przy pomocy  shopt  może  służyć  do  śledzenia  działania
       interpretacji  historii.   Jeżeli  opcja  histverify  powłoki  jest  włączona (zobacz opis
       wbudowanego shopt)  i używane jest readline, to podstawienia historii nie  są  natychmiast
       przesyłane do analizatora składni (parsera) powłoki.  Zamiast tego, zinterpretowany wiersz
       jest ponownie ładowany do bufora edycyjnego readline w celu dalszej  modyfikacji.   Jeżeli
       wykorzystywane   jest   readline   i   włączona   jest  opcja  histreedit,  to  zakończone
       niepowodzeniem podstawienie historii zostanie ponownie  załadowane  do  bufora  edycyjnego
       readline w celu poprawienia.  Opcją -p wbudowanego polecenia history można posłużyć się do
       oglądnięcia,  co  zrobi  interpretacja  historii  przed  jej  zastosowaniem.    Opcji   -s
       wbudowanego  polecenia  history można użyć w celu dodania poleceń na koniec listy historii
       bez faktycznego ich wykonania, tak że będą dostępne dla następnych przywołań.

       Powłoka pozwala na kontrolowanie różnych znaków stosowanych przez mechanizm  interpretacji
       historii  (zobacz  opis  histchars  powyżej,  w  sekcji  Zmienne  powłoki).  Do oznaczania
       pieczątek czasowych, powłoka używa znaku komentarza  historii  podczas  zapisywania  pliku
       historii.

   Desygnatory zdarzeń (Event Designators)
       Desygnator  zdarzenia jest odwołaniem do pozycji wiersza poleceń na liście historii. O ile
       odwołanie nie jest absolutne, zdarzenia są relatywne w  stosunku  do  bieżącej  pozycji  w
       liście historii.

       !      Rozpoczyna  podstawianie  historii,  z  wyjątkiem  sytuacji,  gdy  występuje po nim
              odstęp, znak nowej linii, = lub ( (gdy  włączono  opcję  powłoki  extglob  używając
              wbudowanego shopt).
       !n     Wskazuje na n-ty wiersz poleceń.
       !-n    Wskazuje na wiersz poleceń bieżący minus n.
       !!     Wskazuje na poprzednie polecenie. jest to synonim `!-1'.
       !łańcuch
              Wskazuje na ostatnie poleceniem rozpoczynające się od łańcucha.
       !?łańcuch[?]
              Wskazuje  na  ostatnie  polecenie  poprzedzające bieżącą pozycję w liście historii,
              zawierające łańcuch.  Kończące ?  można  pominąć  jeśli  bezpośrednio  po  łańcuchu
              występuje znak nowej linii.
       ^łańcuch1^łańcuch2^
              Szybkie   podstawianie.   Powtarza  ostatnie  polecenie,  wymieniając  łańcuch1  na
              łańcuch2.  Równoważnik ,,!!:s/łańcuch1/łańcuch/” (zobacz poniżej Modyfikatory).
       !#     Cały wiersz poleceń wpisany do tego momentu.

   Desygnatory słów (Word Designators)
       Desygnatory słów służą do wybierania ze zdarzenia żądanych  słów.   Dwukropek  :  oddziela
       określenie  zdarzenia  od  desygnatora  słowa.  Może  być pominięty jeśli desygnator słowa
       rozpoczyna się od ^, $, *, - lub %.  Słowa numerowane są od początku  wiersza,  przy  czym
       pierwsze  ma  numer  0  (zero).   Słowa  są  wstawiane  do  bieżącego wiersza, rozdzielane
       pojedynczymi spacjami.

       0 (zero)
              Słowo zerowe. Dla powłoki jest to słowo polecenia.
       n      n-te słowo.
       ^      Pierwszy argument. To znaczy, słowo 1.
       $      Ostatnie słowo. Jest to zwykle  ostatni  argument,  ale  jest  interpretowany  jako
              zerowe słowo, gdy jest tylko jedno słowo w wierszu.
       %      Słowo dopasowane przez ostatnie wyszukanie `?łańcuch?'.
       x-y    Zakres słów; `-y' jest skróconym `0-y'.
       *      Wszystkie  słowa prócz zerowego. jest to synonim dla `1-$'.  Nie jest błędem użycie
              * jeśli w zdarzeniu jest tylko jedno słowo; w tym przypadku zwracany  jest  łańcuch
              pusty.
       x*     Skrót od x-$.
       x-     Skrót od x-$ podobnie jak x*, ale pomija ostatnie słowo.

       jeśli  desygnator  słowa  podano  bez  określenia zdarzenia, za zdarzenie przyjmowane jest
       poprzednie polecenie.

   Modyfikatory
       Po opcjonalnym desygnatorze słowa może pojawić się sekwencja jednego lub więcej poniższych
       modyfikatorów, każdy poprzedzony dwukropkiem `:'.

       h      Usuwa końcową składową nazwy pliku, pozostawiając tylko początek.
       t      Usuwa wszystkie początkowe składowe nazwy pliku, pozostawiając koniec.
       r      Usuwa   kończący   przyrostek   postaci  .xxx,  pozostawiając  główną  część  nazwy
              (basename).
       e      Usuwa wszystko prócz końcowego przyrostka.
       p      Wypisuje nowe polecenie, ale go nie wykonuje.
       q      Cytuje podstawiane słowa, zabezpieczając je przed dalszym podstawianiem.
       x      Cytuje podstawiane słowa jak q, ale rozbija na słowa w miejscach odstępów i  znaków
              nowej linii.
       s/stary/nowy/
              Zastępuje  nowym  pierwsze  wystąpienie starego w wierszu zdarzenia. Zamiast / może
              zostać użyty dowolny ogranicznik.  Końcowy ogranicznik jest opcjonalny jeżeli  jest
              ostatnim  znakiem  wiersza  zdarzenia. Separator może być cytowany w nowym i starym
              przy pomocy pojedynczego odwrotnego ukośnika. Jeżeli w nowym pojawia się &, to jest
              zastępowany  starym.   Pojedynczy  odwrotny  ukośnik będzie cytował &. Jeżeli stary
              jest pusty, to ustawiany jest na ostatni podstawiany  stary  lub,  jeśli  nie  było
              poprzednich podstawień historii, ostatni łańcuch w wyszukiwaniu !?łańcuch[?].
       &      Powtarza poprzednie podstawienie.
       g      Powoduje,  że  zmiany  zostaną  zastosowane do całego wiersza zdarzenia.  Używany w
              połączeniu z `:s' (np. `:gs/stary/nowy/')  lub `:&'. Jeśli użyty z `:s', to zamiast
              /  można  posłużyć  się  dowolnym  separatorem, a ostatni separator jest opcjonalny
              jeżeli jest ostatnim znakiem wiersza zdarzenia.
       G      Stosuje następujący  po  nim  modyfikator  "s"  raz  do  każdego  słowa  w  wierszu
              zdarzenia.

WBUDOWANE POLECENIA POWŁOKI

       Jeśli  nie  podano inaczej, każde z poleceń wbudowanych opisanych w niniejszej sekcji jako
       akceptujące opcje poprzedzone - akceptuje również  symbol  --  określający  koniec  opcji.
       Wbudowane  :, true, false i test nie akceptują opcji i nie traktują -- w sposób specjalny.
       Wbudowane exit, logout, return, break, continue, let  i  shift  akceptują  i  przetwarzają
       argumenty  zaczynające  się  od  -, bez wymogu podania --. Inne wbudowane polecenia, które
       akceptują argumenty, lecz nie są opisane jako akceptujące  opcje,  interpretują  argumenty
       zaczynające  się  od  -  jako  opcje  nieprawidłowe  i  wymagają  --,  aby zapobiec takiej
       interpretacji,
       : [argumenty]
              Bez efektów;  polecenie  to  nie  robi  niczego  poza  interpretacją  argumentów  i
              wykonaniem ewentualnych podanych przekierowań. Zwracany status to zero.

        .  plik [argumenty]
       source plik [argumenty]
              Odczytuje  i  wykonuje  polecenia z zadanego pliku w aktualnym środowisku powłoki i
              zwraca kod zakończenia ostatniego wykonanego polecenia z tego pliku.  Jeżeli  nazwa
              pliku  nie  zawiera  ukośnika,  to do znalezienia katalogu go zawierającego używana
              jest zmienna PATH.  Plik poszukiwany w PATH nie musi być wykonywalny.   Jeśli  bash
              nie  jest  w  trybie  posix,  wówczas  jeżeli  nie  znaleziono  pliku  w  PATH,  to
              przeszukiwany jest katalog bieżący.  Jeśli we wbudowanym poleceniu shopt  wyłączona
              jest  opcja  sourcepath,  to  PATH  nie  jest  przeszukiwane.   jeśli podano jakieś
              argumenty, to stają się one parametrami pozycyjnymi podczas  wykonywania  pliku.  W
              przeciwnym razie argumenty pozycyjne pozostają bez zmian. Jeśli włączona jest opcja
              -T, source dziedziczy pułapki z DEBUG; jeśli nie, występujący łańcuch pułapki DEBUG
              jest zachowywany i przechowywany wokół wywołania do source, a source kasuje pułapkę
              DEBUG przy jej wykonaniu. Jeśli -T nie  jest  ustawione,  a  plik  źródłowy  zmieni
              pułapkę DEBUG, nowa wartość jest odzyskiwana po zakończeniu source. Kod zakończenia
              jest kodem ostatniego zakończonego przez skrypt polecenia  (0  jeśli  nie  wykonano
              żadnego  polecenia),  a  fałszem  jeżeli  nie  znaleziono  pliku  lub  nie można go
              odczytać.

       alias [-p] [nazwa[=wartość] ...]
              Alias bez argumentów bądź z opcją -p wypisuje na standardowym wyjściu listę aliasów
              w  postaci  alias  nazwa=wartość.  Jeśli nie dostarczono argumentów, to definiowany
              jest alias (synonim)  dla każdej nazwy,  dla  której  podano  wartość.   Początkowa
              spacja  w  wartości powoduje, że podczas interpretacji aliasu następne słowo będzie
              sprawdzane na podstawianie aliasów.  Dla  każdej  nazwy  z  listy  argumentów,  dla
              której  nie  podano wartości, wypisywana jest nazwa i wartość aliasu.  Alias zwraca
              prawdę, chyba że podano nazwę, dla której nie został zdefiniowany żaden alias.

       bg [spec_zad]
              Wznawia w tle zawieszone zadanie spec_zad, tak jakby zostało ono uruchomione  z  &.
              Jeśli  spec_zad  nie występuje, to używane jest bieżące zadanie, określone tak, jak
              je pojmuje powłoka.  bg spec_zad zwraca 0, chyba że uruchomiono je przy  wyłączonej
              kontroli  zadań  (job control) lub uruchomiono z włączoną kontrolą zadań, jeśli nie
              znaleziono spec_zad lub uruchomiono bez kontroli zadań.

       bind [-m mapa-klawiszy] [-lpsvPSVX]
       bind [-m mapa-klawiszy] [-q funkcja] [-u funkcja] [-r sekw_klaw]
       bind [-m mapa-klawiszy] -f plik
       bind [-m mapa-klawiszy] -x sekw_klaw:polec_powłoki
       bind [-m mapa-klawiszy] sekw_klaw:nazwa_funkcji
       bind [-m mapa-klawiszy] sekw_klaw:polec_readline
              Wyświetla bieżące ustawienia przypisań (bindings) klawiszy i funkcji  readline  lub
              przypisuje  sekwencję  klawiszy  to  funkcji  lub  makra  readline.   Składnia tych
              przypisań jest identyczna  jak  dla  .inputrc,  ale  każde  z  przypisań  musi  być
              przesłane  jako osobny argument; np., '"\C-x\C-r": re-read-init-file'. Opcje, jeśli
              je podano, mają następujące znaczenie:
              -m mapa-klawiszy
                     Wykorzystuje  mapę-klawiszy  jako  mapę  klawiszy,  do   której   mają   być
                     zastosowane  następne  przypisania.  Akceptowanymi  nazwami  map-klawiszyemacs, emacs-standard, emacs-meta, emacs-ctlx,  vi,  vi-move,  vi-command  i
                     vi-insert.   vi  równoważne  jest  vi-command  (synonimem jest też vi-move);
                     emacs jest równoważne emacs-standard.
              -l     Podaje nazwy wszystkich funkcji readline.
              -p     Wyświetla nazwy funkcji i przypisania w taki sposób, że  mogą  być  ponownie
                     odczytane.
              -P     Podaje bieżące przypisania i nazwy funkcji readline.
              -s     Wyświetla  nazwy  i  wartości  zmiennych readline w taki sposób, że mogą być
                     ponownie odczytane.
              -S     Wyświetla sekwencje klawiszy readline przypisane do makr  i  łańcuchy  jakie
                     one wysyłają.
              -v     Wyświetla  sekwencje  klawiszy  readline przypisane do makr i łańcuchy jakie
                     one wysyłają w taki sposób, że mogą być ponownie odczytane.
              -V     Podaje bieżące nazwy i wartości zmiennych readline.
              -f plik
                     Czyta przypisania klawiszy z pliku.
              -q funkcja
                     Podaje, które klawisze wywołują podaną funkcję.
              -u funkcja
                     Odwołuje przypisania wszystkich klawiszy przypisanych do danej funkcji.
              -r sekw_klaw
                     Usuwa bieżące przypisania dla sekwencji klawiszy.
              -x sekw_klaw:polec_powłoki
                     Powoduje, że za każdym naciśnięciem  sekwencji  klawiszy  zostanie  wykonane
                     polecenie  powłoki.  Gdy  polecenie powłoki jest wykonywane, powłoka ustawia
                     zmienną READLINE_LINE na zawartość  bufora  wiersza  readline  oraz  zmienną
                     READLINE_POINT  na  bieżące  położenie  miejsca  wprowadzania  znaków. Jeśli
                     wykonywane polecenie zmienia wartość READLINE_LINE lub READLINE_POINT, to te
                     nowe wartości zostaną uwzględnione podczas edytowania.
              -X     Wypisuje  wszystkie  sekwencje  klawiszy  przypisane  do  poleceń  powłoki i
                     powiązane polecenia w formacie, który można użyć ponownie jako wejście.

              Zwracana jest wartość 0, chyba że podano nierozpoznaną opcję lub pojawił się błąd.

       break [n]
              Opuszcza pętlę for, while, until lub select.  Jeżeli podano n,  przerywa  działanie
              do  n-tego  poziomu.   n musi być ≥ 1. Jeżeli n jest większe od liczby obejmujących
              polecenie pętli, to kończone są wszystkie obejmujące pętle. Wartością zwracaną jest
              0, chyba że powłoka nie wykonuje pętli podczas wykonania break.

       builtin wbudowane [argumenty]
              Wykonuje zadane polecenie wbudowane powłoki, przesyłając mu argumenty i zwraca jego
              kod zakończenia.  Przydatne podczas definiowania funkcji o nazwie tożsamej z  nazwą
              wbudowanego  polecenia  powłoki,  zachowując  funkcjonalność  polecenia wbudowanego
              wewnątrz funkcji.  Wbudowane cd jest powszechnie redefiniowane w ten sposób.  Kodem
              zakończenia jest fałsz jeśli wbudowane nie jest wbudowanym poleceniem powłoki.

       caller [wyrażenie]
              Zwraca  kontekst  aktywnego  wywołania  podprogramu  (funkcji  powłoki  lub skryptu
              wykonywanego wbudowanymi poleceniami . lub source). Bez wyrażenia, caller wyświetla
              numer  wiersza  i plik źródłowy bieżącego wywołania podprogramu. Jeśli do wyrażenia
              przekazano nieujemną liczbę całkowitą, to caller  wyświetla  numer  wiersza,  nazwę
              podprogramu  i  plik  źródłowy  związany  z pozycją w bieżącym stosie wywołania. Te
              dodatkowe informacje mogą być użyte np. do wyświetlenia  stosu  wywołania.  Bieżąca
              ramka  jest  ramką  0.  Zwracaną  wartością  jest  0, chyba że powłoka nie wykonuje
              wywołania podprogramu lub wyrażenie nie odnosi się do prawidłowej pozycji w  stosie
              wywołania.

       cd [-L|[-P [-e]] [-@]] [katalog]
              Zmienia  bieżący katalog roboczy na katalog. Jeśli nie poda się katalogu, domyślnie
              jest to wartość zmiennej powłoki HOME. Wszelkie dodatkowe argumenty po katalogu  są
              ignorowane.   Zmienna   CDPATH   definiuje   ścieżkę   przeszukiwań   dla  katalogu
              zawierającego katalog: każda nazwa katalogu w CDPATH jest przeszukiwana  pod  kątem
              katalogu.  Alternatywne  nazwy  katalogów  w CDPATH rozdzielane są dwukropkiem (:).
              Pusta nazwa katalogu w CDPATH jest tym samym, co katalog bieżący, tj.  ".".  Jeżeli
              katalog  rozpoczyna  się  ukośnikiem  (/),  to  CDPATH  nie  jest używane. Opcja -P
              nakazuje  użycie  fizycznej   struktury   katalogów   podążając   za   dowiązaniami
              symbolicznymi  przy przechodzeniu przez katalog i przed przetwarzaniem wystąpień ..
              w katalogu (zobacz też opcja  -P  wbudowanego  polecenia  set).  Opcja  -L  wymusza
              podążanie  za  dowiązaniami symbolicznymi po przetworzeniu wystąpień .. w katalogu.
              Jeśli  w  katalogu  pojawi  się  ..,  to  jest  ono  pzetwarzane  przez   usunięcie
              występującej  zaraz  przed  nim  składowej  ścieżki  z  katalogu,  aż  do  ukośnika
              rozpoczynającego katalog. Jeśli z -P użyto opcji -e, a bieżący katalog roboczy  nie
              może  zostać  pomyślnie  określony  po pomyślnej zmianie katalogu, to cd zwróci kod
              oznaczający niepowodzenie. W systemach które to  obsługują,  opcja  -@  przedstawia
              atrybuty  rozszerzone  powiązane  z  plikiem  jak  i  katalogiem.  Argument  - jest
              przetwarzany na $OLDPWD przed przeprowadzeniem próby  zmiany  katalogu.Jeśli  użyta
              jest  niepusta  nazwa  katalogu  z  CDPATH lub jeśli - jest pierwszym argumentem, a
              zmiana katalogu odbyła  się  pomyślnie,  na  standardowe  wyjście  wypisywana  jest
              ścieżka  absolutna  do  nowego  katalogu  roboczego. Wartością zwracaną jest prawda
              jeśli pomyślnie zmieniono katalog; w przeciwnym przypadku fałsz.

       command [-pVv] polecenie [arg ...]
              Uruchamia polecenie z argumentami zakazując  zwykłego  wyszukiwania  funkcji  przez
              powłokę. Wykonywane są wyłącznie polecenia wbudowane i polecenia znalezione w PATH.
              Jeżeli  podano  opcję  -p,  wyszukiwanie  polecenia  wykonywane  jest  przy  użyciu
              domyślnej  PATH,  która  gwarantuje  znalezienie wszystkich standardowych narzędzi.
              Jeśli użyto albo opcji -V albo -v, to wypisywany  jest  opis  polecenia.  Opcja  -v
              powoduje,  że  zostanie wyświetlone pojedyncze słowo wskazujące polecenie lub nazwę
              pliku, użyte do wywołania  polecenia;  opcja  -V  tworzy  bardziej  obszerny  opis.
              Jeżeli  podano  opcję  -V  lub  -v,  to  kodem  zakończenia  jest 0 gdy odnaleziono
              polecenie, zaś 1 gdy nie. Jeśli nie podano żadnej z tych opcji i pojawił  się  błąd
              lub  nie  można  znaleźć  polecenia,  to  kod  zakończenia wynosi 127. W przeciwnym
              wypadku kodem  zakończenia  wbudowanego  polecenia  command  jest  kod  zakończenia
              polecenia.

       compgen [opcja] [słowo]
              Tworzy  możliwe  dopasowania uzupełnień dla słowa zgodnie z opcjami, które mogą być
              dowolnymi z opcji akceptowanych przez wbudowane polecenie complete, z wyjątkiem  -p
              i  -r, i wypisuje dopasowania na standardowe wyjście.  Przy stosowaniu opcji -F lub
              -C, różne zmienne powłoki ustawiane przez usługi programowalnego uzupełniania,  gdy
              są dostępne, nie będą mieć użytecznych wartości.

              Dopasowania  będą tworzone w ten sam sposób, jakby kod uzupełniania programowalnego
              tworzył je wprost ze specyfikacji  uzupełniania  z  tymi  samymi  flagami.   Jeżeli
              podano słowo, to wyświetlone zostaną wyłącznie uzupełnienia doń pasujące.

              Wartością  zwracaną  jest prawda, chyba że podano niepoprawną opcję lub nie zostały
              utworzone żadne dopasowania.

       complete [-abcdefgjksuv] [-o opcjacomp] [-DE] [-A akcja] [-G wzglob]  [-W  listasłów]  [-F
       funkcja] [-C polecenie]
              [-X wzfiltr] [-P przedrostek] [-C przyrostek] nazwa [nazwa ...]
       complete -pr [-DE] [nazwa ...]
              Określa, w jaki sposób będą uzupełniane argumenty dla każdej z nazw.  Jeżeli podano
              opcję -p, lub nie podano żadnych opcji, to wypisywane  są  istniejące  specyfikacje
              uzupełniania  -  w sposób, który pozwala na ich ponowne wykorzystanie jako wejścia.
              Opcja -r usuwa specyfikację uzupełniania dla każdej z  nazw,  lub  jeśli  nazw  nie
              podano,  wszystkie specyfikacje uzupełniania. Opcja -D wskazuje, że pozostałe opcje
              i akcje powinny dotyczyć "domyślnego" polecenia uzupełniania, to jest uzupełniania,
              którego próbę podjęto na poleceniu o niezdefiniowanym wcześniej uzupełnieniu. Opcja
              -E oznacza, że  pozostałe  opcje  i  akcje  powinny  dotyczyć  "pustego"  polecenia
              uzupełniania, tzn. uzupełniania, którego próbę podjęto na pustym wierszu.

              Proces  stosowania  tych  specyfikacji  uzupełnień  podczas  prób uzupełniania słów
              omówiono powyżej w sekcji Programowalne uzupełnianie.

              Pozostałe opcje, jeśli je podano, mają niżej opisane  znaczenie.   Argumenty  opcji
              -G, -W i -X (i, jeśli to niezbędne, -P i -S) powinny być cytowane dla ochrony przed
              interpretacją jaka wystąpi zanim zostanie wywołane polecenie complete.
              -o opcjacomp
                      Wartość  opcjacomp  reguluje  kilka  aspektów   zachowania   się   compspec
                      wykraczających poza zwykłe tworzenie uzupełnień.  opcjacomp przyjmuje jedną
                      z wartości:
                      bashdefault
                              Wykonuje pozostałe z domyślnych uzupełnień bash, jeśli compspec nie
                              utworzy żadnych dopasowań.
                      default Stosuje  domyślne  uzupełnianie readline jeśli compspec nie utworzy
                              żadnych dopasowań.
                      dirnames
                              Wykonuje uzupełnianie nazw katalogów  jeśli  compspec  nie  utworzy
                              żadnych dopasowań.
                      filenames
                              Powiadamia  readline,  że  compspec tworzy nazwy plików, zatem może
                              wykonać przetwarzanie specyficzne  dla  takich  nazw  (jak  dodanie
                              ukośnika   do  nazw  katalogów  czy  usunięcie  końcowych  spacji).
                              Zaprojektowane do stosowania z funkcjami powłoki.
                      noquote Przekazuje readline, aby nie cytowało uzupełnianych słów, jeśli  są
                              nazwami plików (domyślnie nazwy plików są cytowane).
                      nosort  Przekazuje   readline,   aby   nie  sortowało  alfabetycznie  listy
                              dostępnych uzupełnień.
                      nospace Przekazuje  readline,  aby  nie  dodawało  spacji  (domyślnie)   do
                              uzupełnionych słów, na końcu wiersza.
                      plusdirs
                              Po    utworzeniu    dopasowań    zdefiniowanych   przez   compspec,
                              przeprowadzana jest próba dopasowania nazw katalogów, a  ewentualne
                              dopasowania są dodawane do wyników innych akcji.
              -A akcja
                      akcja może być jedną z poniższych, tworzących listę możliwych dopasowań:
                      alias   Nazwy aliasów. Można też podać jako -a.
                      arrayvar
                              Nazwy zmiennych tablicowych.
                      binding Nazwy przypisań klawiszy readline.
                      builtin Nazwy wbudowanych poleceń powłoki. Można też podać jako -b.
                      command Nazwy poleceń. Można też podać jako -c.
                      directory
                              Nazwy katalogów. Można też podać jako -d.
                      disabled
                              Nazwy wyłączonych poleceń wbudowanych powłoki.
                      enabled Nazwy włączonych poleceń wbudowanych powłoki.
                      export  Nazwy wyeksportowanych zmiennych powłoki. Można też podać jako -e.
                      file    Nazwy plików. Można też podać jako -f.
                      function
                              Nazwy funkcji powłoki.
                      group   Nazwy grup. Można też podać jako -g.
                      helptopic
                              Tematy pomocy akceptowane przez wbudowane polecenie help.
                      hostname
                              Nazwy  hostów,  pobrane  z  pliku określonego przez zmienną powłoki
                              HOSTFILE.
                      job     Nazwy zadań, jeżeli aktywne jest sterowanie  zadaniami.  Można  też
                              podać jako -j.
                      keyword Zastrzeżone słowa powłoki. Można też podać jako -k.
                      running Nazwy działających zadań, jeżeli aktywne jest sterowanie zadaniami.
                      service Nazwy usług. Można też podać jako -s.
                      setopt  Dozwolone argumenty opcji -o polecenia wbudowanego set.
                      shopt   Nazwy  opcji  powłoki,  takie,  jakie akceptuje polecenie wbudowane
                              shopt.
                      signal  Nazwy sygnałów.
                      stopped Nazwy zatrzymanych zadań, jeśli aktywne jest sterowanie zadaniami.
                      user    Nazwy użytkowników. Można też podać jako -u.
                      variable
                              Nazwy wszystkich zmiennych powłoki. Można też podać jako -v.
              -C polecenie
                      polecenie jest wykonywane w środowisku  podpowłoki,  a  jego  wyjście  jest
                      używane jako możliwe uzupełnienia.
              -F funkcja
                      Funkcja  powłoki funkcja jest wykonywana w bieżącym środowisku powłoki. Gdy
                      funkcja jest wykonywana,  pierwszy  argument  ($1)  jest  nazwą  polecenia,
                      którego  argumenty  są uzupełniane, drugim argumentem ($2) jest uzupełniane
                      słowo, a trzecim ($3) jest słowo poprzedzające uzupełniane słowo w bieżącym
                      wierszu  polecenia.  Po  zakończeniu, możliwe uzupełnienia są pozyskiwane z
                      wartości zmiennej tablicowej COMPREPLY.
              -G wzglob
                      Wzorzec  rozwijania  nazw  plików  wzglob  jest  rozwijany,  tworząc  listę
                      możliwych uzupełnień.
              -P przedrostek
                      na  początku  każdego  z  możliwych  uzupełnień, po zastosowaniu wszystkich
                      innych opcji, dodawany jest przedrostek.
              -S przyrostek
                      na końcu każdego z możliwych uzupełnień, po zastosowaniu wszystkich  innych
                      opcji, dodawany jest przyrostek.
              -W listasłów
                      listasłów  jest  rozbijana  przy zastosowaniu znaków ze zmiennej specjalnej
                      IFS jako separatorów, a  każde  ze  słów  wynikowych  jest  interpretowane.
                      Możliwe   uzupełnienia   są   elementami  listy  wynikowej,  pasującymi  do
                      uzupełnianego słowa.
              -X wzfiltr
                      wzfiltr jest wzorcem używanym do rozwijania nazw plików.  Stosowany jest do
                      listy  możliwych  uzupełnień  utworzonej  przez  poprzedzające  go  opcje i
                      argumenty, a każde pasujące do niego uzupełnienie  jest  usuwane  z  listy.
                      Początkowy  !  w  wzfiltr  powoduje  negację  wzorca;  usuwane  są  wówczas
                      uzupełnienia nie pasujące do wzfiltr.

              Wartością zwracana jest prawda, chyba  że  podano  niepoprawną  opcję,  podano  bez
              argumentu   nazwa   opcję  inną  niż  -p  lub  -r,  usiłowano  usunąć  specyfikację
              uzupełniania dla nazwy, dla  której  nie  istnieje  żadna  specyfikacja,  albo  też
              podczas dodawania specyfikacji uzupełniania wystąpił błąd.

       compopt [-o opcja] [-DE] [+o opcja] [nazwa]
              Modyfikuje  opcje  uzupełniania dla każdej nazwy, zgodnie z opcjami lub dla właśnie
              wykonywanego  uzupełnienia,  jeśli  nie  podano  nazwy.  Jeśli  nie  podano  opcji,
              wyświetla  opcje  uzupełniania  dla  każdej  nazwy  lub dla bieżącego uzupełniania.
              Możliwymi wartościami opcji są opcje, które są poprawne  do  wbudowanego  polecenia
              complete.   Opcja   -D  oznacza,  że  pozostałe  opcje  powinny  być  stosowane  do
              "domyślnego"   polecenia   uzupełniania,   tzn.   uzupełniania,    którego    próbę
              przeprowadzono  dla  polecenia,  dla którego nie zdefiniowano wcześniej uzupełnień.
              Opcja -E oznacza, że pozostałe opcje powinny być zastosowane do "pustego" polecenia
              uzupełniania, tzn. uzupełnienia, którego próbę przeprowadzono na pustym wierszu.

              Zwracaną wartością jest prawda, chyba że podano nieprawidłową opcję, przeprowadzono
              próbę  zmodyfikowania  opcji  dla  nazwy,  dla  której  nie  istnieje  specyfikacja
              uzupełniania lub wystąpił błąd wyjścia.

       continue [n]
              Wznawia  następną  iterację  obejmującej  je  pętli  for,  while, until lub select.
              Jeżeli podano n, wznawia n-tą obejmującą pętlę.  n musi być  ≥  1.  Jeżeli  n  jest
              większe  niż  liczba  obejmujących  pętli,  to  wznawiana  jest  ostatnia  z  pętli
              (,,najwyższa”). Wartość zwracana wynosi 0, chyba  że  powłoka  nie  wykonuje  pętli
              podczas wykonywania continue.

       declare [-aAfFgilnrtux] [-p] [nazwa[=wartość] ...]
       typeset [-aAfFgilnrtux] [-p] [nazwa[=wartość] ...]
              Deklaruje  zmienne  i/lub  nadaje  im  atrybuty.   Jeśli  nie  podano żadnych nazw,
              wyświetla wartości zmiennych.  Opcja  -p  będzie  wyświetlać  atrybuty  i  wartości
              każdej  nazwy.  Gdy  używane  jest  -p z argumentami nazwa, ignorowane są dodatkowe
              opcje inne niż -f lub -F. Opcja -p podana bez argumentów nazwa wyświetli atrybuty i
              wartości  wszystkich  zmiennych  posiadających  atrybuty  określone przez dodatkowe
              opcje. Jeśli nie podano innych opcji z -p, declare wyświetli  atrybuty  i  wartości
              wszystkich  zmiennych  powłoki. Opcja -f ograniczy wyświetlanie do funkcji powłoki.
              Opcja -F zabrania wyświetlania definicji  funkcji;  wypisywane  są  tylko  nazwy  i
              atrybuty  funkcji.   Jeśli  włączono  opcję  powłoki extdebug przy użyciu shopt, to
              wyświetlane  są  również  nazwa  pliku  źródłowego  i  numer  wiersza,   w   którym
              zdefiniowano  każdą  nazwę.  Opcja  -F  implikuje  -f. Opcja -f wymusza tworzenie i
              modyfikację zmiennych na poziomie globalnym, nawet gdy declare  jest  wykonywane  w
              funkcji  powłoki.  Jest ona ignorowana we wszystkich innych przypadkach. Poniższych
              opcji można użyć do ograniczenia wyników do zmiennych o określonym atrybucie lub do
              nadania zmiennym atrybutów:
              -a     Każda z nazw jest indeksowaną zmienną tablicową (zobacz Tablice powyżej).
              -A     Każda z nazw jest asocjacyjną zmienną tablicową (zobacz Tablice powyżej).
              -f     Używa wyłącznie nazw funkcji.
              -i     Zmienna  jest  traktowana  jak  całkowita;  gdy  zmiennej  jest przypisywana
                     wartość,  wykonywana  jest  interpretacja  wyrażeń  arytmetycznych   (zobacz
                     OBLICZANIE WYRAŻEŃ ARYTMETYCZNYCH).
              -l     Gdy  zmiennej  przypisano wartość, wszystkie wielkie litery są zamieniane na
                     małe. Przypisania za pomocą wielkich liter są wyłączone.
              -n     Nadaje  każdej  nazwie  atrybut  nazwa  referencyjna,   czyniąc   ją   nazwą
                     referencyjną   odnoszącą się do   innej   zmiennej.  Ta  inna  zmienna  jest
                     definiowana  w  wartości  nazwy.  Wszystkie  odniesienia  i  przypisania   i
                     modyfikacje  atrybutów nazwy, z wyjątkiem tych używających lub zmieniających
                     sam atrybut -n są wykonywane na zmiennej do której odnosi się wartość nazwy.
                     Atrybutu nazwa referencyjna nie można zastosować do zmiennych tablicowych.
              -r     Powoduje,  że  dane nazwy stają się tylko-do-odczytu (readonly).  Nazwom tym
                     nie można przypisać wartości następnymi poleceniami przypisania.  Nie  można
                     też ich usunąć za pomocą unset.
              -t     Nadaje  każdej  nazwie  atrybut  trace.  Funkcje  z tym atrybutem dziedziczą
                     pułapki DEBUG i  RETURN  z  wywołującej  je  funkcji.  Atrybut  ten  nie  ma
                     specjalnego znaczenia dla zmiennych.
              -u     Gdy  zmiennej  przypisano  wartość,  wszystkie  małe litery są zamieniane na
                     wielkie. Przypisania za pomocą małych liter są wyłączone.
              -x     Zaznacza nazwę do wyeksportowania przez środowisko do kolejnych poleceń.

              Użycie `+' zamiast `-' wyłącza atrybut, z  wyjątkiem  tego,  że  +a  nie  może  być
              używane  do  niszczenia  zmiennej  tablicowej.  a  +r  nie usunie atrybutu tylko do
              odczytu. Użyte w funkcji declare i typeset powodują, że  każda  z  nazw  staje  się
              lokalna,  jak  przy pomocy polecenia local, chyba że podano opcję -g. Przy używaniu
              -a lub -A oraz składni polecenia złożonego  do  utworzenia  zmiennych  tablicowych,
              dodatkowe  atrybuty  nie  dają  efektu aż do kolejnych przypisań. Jeśli po zmiennej
              występuje =wartość, to wartość zmiennej jest ustawiana na  wartość.  Zwracana  jest
              wartość  0,  chyba że napotkano niepoprawną opcję, próbę zdefiniowania funkcji przy
              pomocy ``-f foo=bar'', przypisania wartości zmiennej readonly, przypisania wartości
              zmiennej  tablicowej  bez  użycia  składni  przypisania  złożonego  (zobacz Tablice
              powyżej), jedna z nazw nie jest poprawną nazwą zmiennej powłoki, usiłowano wyłączyć
              status readonly dla zmiennej tylko do odczytu, wyłączyć status tablicy dla zmiennej
              tablicowej albo próbowano wyświetlić nieistniejącą funkcję przy pomocy -f.

       dirs [-clpv] [+n] [-n]
              Bez opcji wyświetla listę aktualnie zapamiętanych katalogów.  Domyślnie wyświetlana
              jest  ona  w  pojedynczym  wierszu,  z  nazwami  katalogów  rozdzielonymi spacjami.
              Katalogi dodawane są do listy poleceniem  pushd  polecenie  popd  usuwa  pozycje  z
              listy. Bieżący katalog jest zawsze pierwszy na stosie.
              -c     Czyści stos katalogów usuwając wszystkie jego pozycje.
              -l     Tworzy listing używając pełnych ścieżek; domyślnie format listingu posługuje
                     się tyldą do oznaczania katalogu domowego.
              -p     Wypisuje stos katalogów po jednej pozycji na wiersz.
              -v     Wypisuje stos katalogów po jednej pozycji na wiersz,  poprzedzając  każdą  z
                     nich jej pozycją (indeksem) w stosie.
              +n     Wyświetla  ntą pozycję licząc od lewej na liście pokazywanej przez dirs przy
                     wywołaniu bez opcji; początkową jest zero.
              -n     Wyświetla ntą pozycję licząc od prawej na liście pokazywanej przez dirs przy
                     wywołaniu bez opcji; początkową jest zero.

              Wartością  zwracaną jest 0, chyba że podano nieprawidłową opcję lub n wskazuje poza
              koniec stosu katalogów.

       disown [-ar] [-h] [zadanie ... | pid ... ]
              Bez opcji, usuwa każde z podanych zadań z tablicy zadań aktywnych. Jeśli nie podano
              zadania  i  nie  użyto  ani opcji -a ani -r, to używane jest zadanie bieżące. Jeśli
              użyto opcji -h, każde zadanie nie jest usuwane  z  tablicy,  ale  jest  jako  takie
              zaznaczane,  tak  że  do  zadania  nie  jest  wysyłany  sygnał SIGHUP jeśli powłoka
              otrzymuje SIGHUP. Jeżeli podano zadanie, opcja -a oznacza usunięcie lub zaznaczenie
              wszystkich  zadań;  opcja  -r bez argumentu zadania ogranicza akcję do działających
              zadań. Wartością zwracaną jest 0, chyba że zadanie nie określa poprawnego zadania.

       echo [-neE] [argument ...]
              Wyświetla argumenty, rozdzielone spacjami, zakończone znakiem  nowej  linii.  Kodem
              zakończenia  jest zawsze 0, chyba że wystąpi błąd zapisu.  Jeżeli podano -n, to nie
              jest wysyłany kończący znak nowej linii.  Jeżeli podano  opcję  -e,  włączana  jest
              interpretacja  podanych  niżej  znaków  specjalnych. Opcja -E wyłącza interpretację
              tych znaków, nawet  na  systemach,  gdzie  są  one  domyślnie  interpretowane.   Do
              dynamicznego  sprawdzania, czy echo interpretuje domyślnie te znaki, czy nie, służy
              opcja powłoki xpg_echo.  echo nie interpretuje  --  jako  oznaczenia  końca  opcji.
              echo interpretuje następujące sekwencje specjalne:
              \a     alarm (dzwonek)
              \b     backspace
              \c     pomiń kończący znak nowej linii
              \e
              \E     znak escape
              \f     znak wysuwu strony (form feed)
              \n     znak nowego wiersza (new line)
              \r     powrót karetki (carriage return)
              \t     tabulacja pozioma (horizontal tab)
              \v     tabulacja pionowa (vertical tab)
              \\     odwrotny ukośnik (backslash)
              \0nnn  ośmiobitowy  znak,  którego  wartością  jest  ósemkowa  liczba nnn (jedna do
                     trzech cyfr)
              \xHH   ośmiobitowy znak, którego wartością jest szesnastkowa liczba nnn (jedna  lub
                     dwie cyfry szesnastkowe)
              \uHHHH znak  Unicode  (ISO/IEC  10646)  o  wartości  szesnastkowej  HHHH  (jedna do
                     czterech cyfr szesnastkowych)
              \UHHHHHHHH
                     znak Unicode (ISO/IEC 10646) o wartości  szesnastkowej  HHHHHHHH  (jedna  do
                     ośmiu cyfr szesnastkowych)

       enable [-a] [-dnps] [-f plik] [nazwa ...]
              Włącza  i  wyłącza  wbudowane  polecenia  powłoki.   Wyłączenie poleceń wbudowanych
              umożliwia wykonanie polecenia dyskowego mającego tę samą nazwę, co  wbudowane,  bez
              podawania  jego  pełnej  nazwy  ścieżkowej, mimo iż powłoka normalnie szuka poleceń
              wbudowanych przed poleceniami dyskowymi.  Jeżeli posłużono się opcją -n,  wyłączana
              jest  każda  z nazw; w przeciwnym razie nazwy są włączone.  Na przykład, chcąc użyć
              pliku binarnego test znalezionego przez PATH zamiast wersji wbudowanej  w  powłokę,
              należy uruchomić ``enable -n test''.  Opcja -f oznacza załadowanie nowego polecenia
              wbudowanego  nazwa  z  obiektu  dzielonego  (shared  object)   plik,  na  systemach
              obsługujących dynamiczne ładowanie.  Opcja -d usunie polecenie wbudowane załadowane
              poprzednio przez -f.  Jeżeli nie podano żadnych argumentów nazwa lub  jeśli  podano
              opcję -p, wypisywana jest lista poleceń wbudowanych powłoki.  Bez innych argumentów
              opcyjnych, lista ta składa się ze wszystkich włączonych poleceń wbudowanych.  Jeśli
              podano  -n,  wypisywane  są tylko wyłączone polecenia wbudowane.  Jeżeli podano -a,
              wypisywana lista zawiera wszystkie polecenia wbudowane, ze wskazaniem  przy  każdym
              czy  jest  ono włączone czy też nie.  Jeżeli podano -s, wyjście ograniczone jest do
              POSIX-owych ,,specjalnych” poleceń wbudowanych.  Wartością zwracaną jest  0,  chyba
              że nazwa nie jest poleceniem wbudowanym powłoki lub wystąpił błąd podczas ładowania
              nowego polecenia wbudowanego z obiektu dzielonego.

       eval [argument ...]
              Argumenty są czytane i łączone w pojedyncze polecenie.  Polecenie to jest następnie
              odczytywane i wykonywane przez powłokę, zaś jego kod zakończenia jest zwracany jako
              wartość eval.  Jeżeli nie na żadnych argumentów, lub wszystkie argumenty są  puste,
              eval zwraca 0.

       exec [-cl] [-a nazwa] [polecenie [argumenty]]
              Jeżeli  podano  polecenie,  zastępuje  ono  powłokę.  Nie  tworzony jest żaden nowy
              proces. Argumenty stają się argumentami polecenia. Jeśli podano opcję -l, umieszcza
              kreskę na początku zerowego argumentu przesyłanego do polecenia. Tak samo, jak robi
              to  login(1).  Opcja  -c  powoduje,  że  polecenie  zostanie  wykonane   z   pustym
              środowiskiem.  Jeżeli  podano  -a, powłoka przesyła do wykonywanego polecenia nazwę
              jako zerowy argument. Jeżeli polecenie z jakiegoś powodu nie może zostać  wykonane,
              to  powłoka  nie-interaktywna  kończy  pracę,  chyba że włączona jest opcja powłoki
              execfail, wówczas zwraca niepowodzenie. Powłoka interaktywna  zwraca  niepowodzenie
              jeśli  plik  nie  może zostać wykonany. Jeżeli nie podano polecenia, przekierowania
              skutkują w bieżącej  powłoce,  a  kodem  zakończenia  jest  0.  W  przypadku  błędu
              przekierowania kod zakończenia wynosi 1.

       exit [n]
              Powoduje,  że  powłoka  kończy  pracę  z  kodem  równym n. Jeśli pominięto n, kodem
              zakończenia jest kod ostatniego wykonanego polecenia.  Przed końcem  pracy  powłoki
              wykonywane jest przechwycenie sygnału EXIT.

       export [-fn] [nazwa[=słowo]] ...
       export -p
              Podane   nazwy  zaznaczane  są  do  automatycznego  wyeksportowania  do  środowiska
              następnych wykonywanych poleceń. Jeśli podano opcję -f, to  nazwy  odnoszą  się  do
              funkcji.  Jeżeli  nie podano żadnych nazw lub jeżeli podano opcję -p, to wypisywana
              jest lista nazw  wszystkich  eksportowanych  w  tej  powłoce  zmiennych.  Opcja  -n
              powoduje  usunięcie  cechy  eksportowania  z  podanych  zmiennych.  Jeśli po nazwie
              zmiennej występuje =słowo, to wartość zmiennej  jest  ustawiana  na  słowo.  export
              zwraca zerowy kod zakończenia, chyba że napotkano nieprawidłową opcję, jedna z nazw
              nie jest poprawną nazwą zmiennej powłoki lub podano -f  z  nazwą,  która  nie  jest
              funkcją.

       fc [-e nazwa_e] [-lnr] [pierwsze] [ostatnie]
       fc -s [wzorzec=zastąpienie] [polecenie]
              W  pierwszej  postaci,  wybiera  zakres poleceń od pierwszego do ostatniego z listy
              historii i wypisuje lub edytuje oraz wykonuje je ponownie. Pierwsze i ostatnie mogą
              być  podawane  jako  łańcuch (do odnalezienia ostatniego polecenia rozpoczynającego
              się tym łańcuchem) lub jako liczba (indeks w liście historii, gdzie  liczba  ujemna
              używana  jest  jako  offset  od  numeru  bieżącego polecenia), Jeżeli nie określono
              ostatniego, to jest ono ustawiane na bieżące polecenie w przypadku listowania  (tak
              że  ``fc  -l  -10''  wypisuje  ostatnich  10  poleceń)  i na pierwsze w pozostałych
              przypadkach.  Jeżeli nie określono pierwszego polecenia, to jest ono  ustawiane  na
              poprzednie polecenie w przypadku edycji a na -16 przy listowaniu.

              Opcja  -n  wstrzymuje  wyświetlanie  numerów  poleceń podczas listowania.  Opcja -r
              odwraca kolejność poleceń.  Jeżeli podano opcję -l, to polecenia  listowane  są  na
              standardowym  wyjściu.  W  przeciwnym  razie  dla  pliku zawierającego te polecenia
              wywoływany jest edytor podany przez nazwa_e.  Jeżeli nie  podano  nazwa_e,  używana
              jest  wartość  FCEDIT,  a  wartość  EDITOR  jeśli nie ustawiono FCEDIT.  Jeżeli nie
              ustawiono żadnej z nich, używany jest vi Po zakończeniu edycji, wysyłane  edytowane
              polecenia są wyświetlane przez echo i wykonywane.

              W   drugiej   postaci,  polecenie  jest  ponownie  wykonywane  po  każdej  wymianie
              wystąpienia wzorca przez zastąpienie. Polecenie jest  interpretowane  podobnie  jak
              pierwsze  powyżej.  Przydatnym  aliasem  do  wykorzystania  z tą formą jest ``r="fc
              -s"'', tak, że napisanie ``r cc'' uruchamia ostatnie polecenie  rozpoczynające  się
              od ``cc'' a napisanie ``r'' ponownie wykonuje ostatnie polecenie.

              Jeżeli  użyta  została  pierwsza  postać,  to  wartością  zwracaną jest 0, chyba że
              napotkano nieprawidłową opcję lub pierwszy albo ostatni określają wiersze  historii
              spoza  zakresu.  Jeżeli podano opcję -e, wartością zwracaną jest wartość ostatniego
              wykonanego polecenia lub niepowodzenie jeśli pojawił się  błąd  tymczasowego  pliku
              poleceń.   Jeżeli  użyta została druga postać, to zwracanym kodem jest kod ponownie
              wykonanego polecenia, chyba że polecenie nie określa poprawnego wiersza poleceń  --
              wówczas fc zwraca porażkę.

       fg [zadanie]
              Wznawia  zadanie  na  pierwszym  planie  i  czyni je zadaniem bieżącym.  Jeżeli nie
              podano zadania, używane jest bieżące zadanie w pojęciu powłoki.  Wartością zwracaną
              jest  wartość  polecenia  umieszczonego  na pierwszym planie, lub porażka jeżeli fb
              uruchomiono przy wyłączonej kontroli  zadań,  lub  uruchomiono  je  przy  włączonej
              kontroli  zadań,  ale  zadanie nie określa prawidłowego zadania lub zadanie określa
              zadanie, które zostało uruchomione bez kontroli zadań.

       getopts łańcuch_opcji nazwa [argumenty]
              getopts używane jest przez procedury powłoki  do  analizy  parametrów  pozycyjnych.
              Łańcuch  opcji  zawiera  znaki  opcji, jakie mają być rozpoznawane; jeżeli po znaku
              występuje dwukropek, to oczekuje się, że  opcja  będzie  posiadać  argument,  który
              powinien być od niej oddzielony białym znakiem.  Jako znaki opcji nie mogą wystąpić
              dwukropek i znak zapytania.  Przy każdym wywołaniu getopts umieszcza następną opcję
              w  zmiennej  powłoki  nazwa,  inicjując nazwę jeśli nie istniała. Indeks następnego
              argumentu do przetwarzania umieszczany jest w zmiennej OPTIND.   OPTIND  inicjowany
              jest  na  1  za  każdym  razem, gdy wywoływana jest powłoka lub skrypt powłoki. Gdy
              opcja wymaga argumentu, getopts  umieszcza  go  w  zmiennej  OPTARG.   Powłoka  nie
              resetuje   OPTIND   automatycznie;   musi   być   on  resetowany  ręcznie  pomiędzy
              wielokrotnymi odwołaniami do getopts w tym samym wywołaniu powłoki,  jeśli  używany
              ma być nowy zestaw parametrów.

              Po  napotkaniu końca opcji, getopts kończy pracę zwracając wartość większą od zera.
              OPTIND ustawiane jest na indeks pierwszego argumentu nie będącego opcją, zaś  nazwa
              ustawiana jest na ?.

              getopts  normalnie  analizuje  parametry pozycyjne, ale jeśli w argumentach, podano
              więcej argumentów, to getopts przetwarza je zamiast parametrów pozycyjnych.

              getopts może zgłaszać błędy na dwa sposoby. Jeżeli pierwszym znakiem łańcucha opcji
              jest  dwukropek,  to  stosowane jest ciche (silent) zgłaszanie błędów. Przy zwykłej
              pracy komunikaty diagnostyczne wypisywane są przy napotkaniu nieprawidłowych  opcji
              lub  brakujących  argumentów opcji.  Jeżeli zmienna OPTERR ustawiona jest na 0, nie
              będą wyświetlane żadne komunikaty błędów, nawet jeśli  pierwszym  znakiem  łańcucha
              opcji nie jest dwukropek.

              Przy  napotkaniu  nieprawidłowej  opcji  getopts  umieszcza ? w nazwie i, jeśli nie
              pracuje w trybie cichym, wypisuje komunikat błędu i kasuje OPTARG.  Jeżeli  getopts
              pracuje  w  trybie cichym, to znaleziony znak opcji umieszczany jest w OPTARG i nie
              jest wypisywany żaden komunikat diagnostyczny.

              Jeśli nie znaleziono wymaganego argumentu, a getopts nie pracuje w trybie cichym, w
              nazwa  umieszczany jest znak zapytania (?), kasowane jest OPTARG i wyświetlany jest
              komunikat błędu.  Jeżeli getopts pracuje w trybie cichym, to w  nazwie  umieszczany
              jest dwukropek (:), a OPTARG ustawiane jest na znaleziony znak opcji.

              getopts  zwraca prawdę, jeśli znaleziono określoną lub nie określoną opcję.  Zwraca
              fałsz jeżeli napotkano koniec opcji lub pojawił się błąd.

       hash [-lr] [-p plik] [-dt] [nazwa]
              Dla każdej nazwy określana i  zapamiętywana  jest  pełna  nazwa  plikowa  polecenia
              wyszukanego  w  katalogach  $PATH.  Jeżeli  podano  opcję  -p,  nie jest wykonywane
              przeszukanie ścieżki, a plik używane jest jako pełna nazwa pliku polecenia.   Opcja
              -r  powoduje, że powłoka zapomina wszystkie zapamiętane wcześniej miejsca. Opcja -d
              powoduje, że powłoka zapomina wszystkie zapamiętane wcześniej  miejsca  dla  każdej
              nazwy.  Jeśli  podano opcję -t, to wypisywana jest odpowiadająca nazwie pełna nazwa
              pliku.  Jeżeli przy więcej niż jednym argumencie nazwy podano -t,  to  przed  każdą
              przechowywaną  pełną  nazwą  wypisywana jest nazwa.  Opcja -l powoduje wyświetlanie
              wyniku w formacie, który może zostać ponownie wykorzystany jako wejście. Jeżeli nie
              podano   żadnych   argumentów,   to  wypisywana  jest  informacja  o  zapamiętanych
              poleceniach.  Kodem zwracanym jest prawda,  chyba  że  nie  odnaleziono  nazwy  lub
              podano nieprawidłową opcję.

       help [-dms] [wzorzec]
              Wyświetla  pomocne  informacje o poleceniach wbudowanych. Jeżeli podano wzorzec, to
              help daje szczegółową pomoc dotyczącą wszystkich poleceń pasujących  do  wzorca;  w
              przeciwnym  razie  wypisywana  jest  pomoc  dla  wszystkich  poleceń  wbudowanych i
              struktur sterujących powłoki.
              -d     Wyświetla krótki opis dla każdego wzorca
              -m     Wyświetla opis dla każdego wzorca w formacie podobnym do strony man
              -s     Wyświetla jedynie krótkie podsumowanie użycia każdego wzorca

              Kodem zakończenia jest 0, chyba nie nie dopasowano żadnego polecenia do wzorca.

       history [n]
       history -c
       history -d przesunięcie
       history -anrw [plik]
       history -p arg [arg ...]
       history -s arg [arg ...]
              Bez żadnych opcji, wyświetla listę historii poleceń z  numerami  wierszy.   Wiersze
              ukazane  z  *  zostały  zmienione. Argument n pokazuje jedynie ostatnich n wierszy.
              Jeśli ustawiono zmienną  powłoki  HISTTIMEFORMAT  i  nie  jest  ona  pusta,  to  do
              wyświetlania  pieczątek  czasowych związanych z każdym wyświetlanym wpisem historii
              używany jest format łańcucha do strftime(3). Pomiędzy formatowaną pieczątką czasową
              a  wierszem historii nie jest wstawiany odstęp. Jeżeli podano plik, to używany jest
              on jako nazwa pliku historii; jeśli nie, to używana jest wartość HISTFILE.   Opcje,
              jeżeli je podano, mają następujące znaczenie:
              -c     Czyści listę historii usuwając wszystkie jej pozycje.
              -d przesunięcie
                     Usuwa wpis historii z pozycji przesunięcie.
              -a     Dodaje  "nowe" wiersze do pliku historii. Są to wiersze historii wprowadzone
                     od początku bieżącej sesji bash, lecz nie dodane jeszcze do pliku historii.
              -n     Wczytuje do bieżącej listy wiersze jeszcze nie przeczytane z pliku historii.
                     Są  to  wiersze  dołączone  do pliku historii od chwili rozpoczęcia bieżącej
                     sesji pracy bash.
              -r     Czyta zawartość pliku historii i dodaje ją do bieżącej listy historii.
              -w     Zapisuje  bieżącą  listę  historii  do  pliku  historii,   nadpisując   jego
                     zawartość.
              -p     Na    zadanych   argumentach   wykonuje   podstawianie   historii   (history
                     substitution). Wyświetla wyniki  na  standardowym  wyjściu.   Nie  zachowuje
                     wyników  na  liście.   Każdy  z  argumentów  musi  być cytowany, by wyłączyć
                     normalną interpretację historii.
              -s     Zachowuje argumenty  na  liście  historii  jako  pojedynczą  pozycję.  Przed
                     dodaniem argumentów z listy usuwane jest ostatnie polecenie.

              Jeśli  ustawiona  jest zmienna HISTTIMEFORMAT, to do pliku historii zapisywana jest
              informacja  o  czasie  związanym  z  każdym  wpisem  historii,  oznaczona   znakiem
              komentarza  historii.  Gdy  plik historii jest odczytywany, wiersze zaczynające się
              znakiem  komentarza  historii,  po  którym   występuje   bezpośrednio   cyfra,   są
              interpretowane  jako  czasy  kolejnego  wpisu.  Wartością zwracaną jest 0, chyba że
              napotkano nieprawidłową opcję lub podczas odczytu czy zapisu pliku historii pojawił
              się  błąd,  podano  niepoprawny  argument  offset  opcji  -d,  lub nie powiodła się
              interpretacja historii podanej jako argument -p.

       jobs [-lnprs] [ zadanie ... ]
       jobs -x polecenie [ argumenty ... ]
              Pierwsza postać podaje aktywne zadania. Opcje mają następujące znaczenie:
              -l     Oprócz zwykłej informacji podaje identyfikatory procesów.
              -n     Wyświetla wyłącznie informację o zadaniach, które zmieniły status od chwili,
                     gdy użytkownik był ostatnio powiadamiany o ich statusie.
              -p     Listuje tylko ID procesu lidera grupy procesów zadania.
              -r     Wyświetla jedynie działające zadania.
              -s     Wyświetla jedynie zatrzymane zadania.

              Jeżeli  podano  zadanie,  wyniki ograniczane są do informacji o tym zadaniu.  Kodem
              zwracanym jest 0, chyba że napotkano nieprawidłową opcję lub  podano  nieprawidłowe
              zadanie.

              Jeżeli  podano  opcję -x, to jobs zastępuje wszelkie zadania znalezione w poleceniu
              lub argumentach odpowiednim ID grupy procesów, wykonuje  polecenie  przesyłając  mu
              argumenty, i zwraca jego kod zakończenia.

       kill [-s sigspec | -n signum | -sigspec] [pid | jobspec] ...
       kill -l|-L [sigspec | exit_status]
              Wysyła  sygnały określony przez sigspec lub signum do procesu określonego przez pid
              lub jobspec.  sigspec jest  albo  nazwą  sygnału,  jak  np.   SIGKILL  (z  lub  bez
              przedrostka  SIG)  albo  numerem  sygnału;  signum  jest numerem sygnału. Jeśli nie
              podano sigspec, to przyjmuje się SIGTERM.  Opcja -l listuje nazwy sygnałów.  Jeżeli
              przy podanym -l użyto jakichś argumentów, to listowane są sygnały odpowiadające tym
              argumentom, a kodem zwracanym jest 0.  Argument exit_status opcji  -l  jest  liczbą
              określającą  numer  sygnału  lub  kod zakończenia procesu przerwanego przez sygnał.
              Opcja -L jest równoważna -l.   kill  zwraca  prawdę,  jeśli  przynajmniej  jeden  z
              sygnałów  został  pomyślnie  przesłany,  lub  fałsz,  jeśli  pojawił  się  błąd lub
              napotkano niepoprawną opcję.

       let arg [arg ...]
              Każdy argument jest  wyrażeniem  arytmetycznym,  jakie  ma  zostać  zinterpretowane
              (zobacz  OBLICZANIE  WYRAŻEŃ ARYTMETYCZNYCH).  Jeżeli ostatni z nich interpretowany
              jest jako zero, to let zwraca 1; w przeciwnym wypadku zwracane jest 0.

       local [opcja] [nazwa[=wartość] ... | - ]
              Dla każdego argumentu tworzona jest zmienna lokalna  o  nazwie  nazwa  i  jest  jej
              przypisywana  wartość.   Opcją  może być każda z opcji akceptowanych przez declare.
              Gdy local używane jest wewnątrz funkcji,  powoduje,  że  zmienna  nazwa  ma  zasięg
              widzialności  ograniczony  do  tej  funkcji  i  jej  potomków.  Jeśli nazwą jest -,
              ustawienie opcji powłoki  jest  lokalne  w  stosunku  do  funkcji  w  której  local
              wywołano:  opcje  powłoki  zmienione  za  pomocą polecenia wbudowanego set wewnątrz
              funkcji są przywracane do pierwotnych wartości po powrocie funkcji. Bez  operandów,
              local  wysyła  listę zmiennych lokalnych na standardowe wyjście. Błędem jest użycie
              local poza funkcją.  Zwracany jest kod  0,  chyba  że  local  zostanie  użyte  poza
              funkcją lub podano nieprawidłową nazwę, albo nazwa jest zmienną tylko do odczytu.

       logout Kończy pracę powłoki zgłoszeniowej.

       mapfile  [-d  sep]  [-n  liczba]  [-O  indeks] [-s liczba] [-t] [-u fd] [-C wywoł-zwr] [-c
       wielkość] [tablica]
       readarray [-d sep] [-n liczba] [-O indeks] [-s liczba] [-t] [-u  fd]  [-C  wywoł-zwr]  [-c
       wielkość] [tablica]
              Odczytuje  wiersze  ze  standardowego  wejścia  do indeksowanej zmiennej tablicowej
              tablica lub, jeśli podano opcję -u, z deskryptora pliku fd. Domyślną  tablicą  jest
              zmienna MAPFILE Opcje, jeśli je podano, mają następujące znaczenie:
              -d     Pierwszy  znak  sep  służy  do  zakończenia każdego wiersza wejścia, zamiast
                     znaku nowego wiersza.
              -n     Kopiuje najwyżej liczbę wierszy. Gdy liczba wynosi 0, kopiowane są wszystkie
                     wiersze.
              -O     Rozpoczyna przypisywanie do tablicy od indeksu indeks. Domyślnym jest 0.
              -s     Pomija pierwsze liczba wierszy.
              -t     Usuwa  końcowy  sep  (domyślnie  znak  nowego wiersza) z każdego odczytanego
                     wiersza.
              -u     Odczytuje wiersze z deskryptora pliku fd zamiast ze standardowego wejścia.
              -C     Oblicza wywoł-zwr po każdym odczytaniu liczby  wielkość  wierszy.  Opcja  -c
                     określa wielkość.
              -c     Określa liczbę wierszy odczytanych pomiędzy każdym odwołaniem do wywoł-zwr.

              Jeśli  podano  -C  bez  -c,  to  domyślną wielkością jest 5000. Gdy wykonywane jest
              wywoł-zwr, jako dodatkowe argumenty przekazywane są mu indeks  następnego  elementu
              tablicy do przypisania i wiersza, który ma być przypisy do tego elementu. Wywoł-zwr
              jest wykonywane po odczytaniu wiersza, ale przed przypisaniem elementu tablicy.

              Jeśli nie podano indeksu, mapfile  wyczyści  tablicę  przed  przypisaniem  do  niej
              wartości.

              Polecenie  mapfile  zwraca sukces, chyba że podano nieprawidłową opcję lub argument
              opcji, tablica jest nieprawidłowa, nie da się do niej przypisać  wartości  lub  nie
              jest tablicą indeksowaną.

       popd [-n] [+n] [-n]
              Usuwa pozycje ze stosu katalogów. Bez argumentów, usuwa katalog z wierzchołka stosu
              i wykonuje cd do nowego katalogu na wierzchołku.  Argumenty, jeśli występują,  mają
              następujące znaczenie:
              -n     Nie  wykonuje  zwykłej  zmiany katalogu podczas usuwania katalogów ze stosu,
                     tak że zmieniany jest tylko stos.
              +n     Usuwa ntą pozycję, licząc od lewej, listy pokazywanej przez dirs, zaczynając
                     od  zera.  Na  przykład  ``popd  +0''  usuwa pierwszy katalog, a ``popd +1''
                     drugi.
              -n     Usuwa  ntą  pozycję,  licząc  od  prawej,  listy  pokazywanej  przez   dirs,
                     zaczynając  od zera. Na przykład ``popd -0'' usuwa ostatni katalog, a ``popd
                     -1'' przedostatni.

              Jeżeli polecenie popd powiedzie się, to  wykonywane  jest  również  dirs,  a  kodem
              zwracanym  jest  0.   popd  zwraca  fałsz jeśli napotkano nieprawidłową opcję, stos
              katalogów jest pusty, podano nieistniejącą pozycję stosu lub nie udała  się  zmiana
              katalogu.

       printf [-v zmienna] format [argumenty]
              Zapisuje  sformatowane  argumenty  na  standardowe  wyjście  przy  pomocy  zadanego
              formatu. Opcja -v przypisuje wynik do zmiennej zmienna  zamiast  wyświetlać  je  na
              standardowe wyjściowe.

              format  jest  łańcuchem  znakowym zawierającym trzy rodzaje obiektów: zwykłe znaki,
              które są po prostu kopiowane na standardowe wyjście, sekwencje specjalne, które  są
              konwertowane  i kopiowane na standardowe wyjście, i specyfikacje formatu, z których
              każda powoduje wypisanie  następnego  kolejnego  argumentu.   Oprócz  standardowych
              formatów printf(1), interpretuje on również następujące rozszerzenia:
              %b     powoduje,  że  printf  interpretuje  sekwencje ucieczki z ukośnikiem w danym
                     argumencie w ten sam sposób co echo -e.
              %q     powoduje, że printf wysyła odpowiedni argument w  formacie,  jaki  może  być
                     ponownie wykorzystany jako wejście powłoki.
              %(format-daty)T
                     powoduje,  że  printf  wyświetla  łańcuch  daty/czasu  jako  rezultat użycia
                     formatu-daty jako łańcucha formatu do strftime(3). Powiązany  argument  jest
                     liczba  całkowitą  odpowiadającą  liczbie sekund od początku epoki [Uniksa].
                     Można użyć dwóch specjalnych wartości  argumentu:  -1  reprezentuje  bieżący
                     czas,  a  -2  odpowiada  czasowi  wywołania  powłoki.  Jeśli  nie  poda  się
                     argumentu, konwersja przebiega tak, jak gdyby podano -1. Jest to  wyjątek  w
                     zwyczajnym zachowaniu printf.

              Argumenty  do  specyfikacji formatu niebędących łańcuchami są traktowane jako stałe
              C, z wyjątkiem początkowego  znaku  plus  lub  minus,  który  jest  dozwolony  oraz
              przypadku  gdy  pierwszy  znak  jest  pojedynczym  lub  podwójnym  apostrofem,  gdy
              wartością jest wartość ASCII następującego po cudzysłowie znaku.

              W razie potrzeby format wykorzystywany jest ponownie, aż do  obsłużenia  wszystkich
              argumentów.   Jeżeli  format  wymaga  większej  ilości  argumentów  niż  podano, to
              dodatkowe specyfikacje formatu zachowują się tak, jakby dostarczono im  odpowiednio
              wartość  zerową  lub  łańcuch  pusty.   Zwracana  jest  wartość  zero  w  przypadku
              powodzenia, niezerowa przy porażce.

       pushd [-n] [+n] [-n]
       pushd [-n] [katalog]
              Dodaje katalog na wierzchołek stosu  katalogów,  albo  obraca  stos,  czyniąc  nowy
              wierzchołek  stosu  bieżącym  katalogiem  roboczym.  Bez argumentów, pushd zamienia
              miejscami dwa najwyższe katalogi stosu [wierzchołek i następny] i zwraca  0,  chyba
              że stos jest pusty. Argumenty, jeśli je podano, mają następujące znaczenie:
              -n     Nie  wykonuje  zwykłej  zmiany  katalogu  podczas  obracania  lub  dodawania
                     katalogów do stosu, tak że zmieniany jest tylko stos.
              +n     Obraca stos, tak że nty katalog (licząc od  lewej  listy  pokazywanej  przez
                     dirs, poczynając od zera)  staje się wierzchołkiem.
              -n     Obraca  stos,  tak  że nty katalog (licząc od prawej listy pokazywanej przez
                     dirs, poczynając od zera)  staje się wierzchołkiem.
              katalog
                     Odkłada katalog na wierzchołek stosu, czyniąc go nowym  bieżącym  katalogiem
                     roboczym, jak gdyby podano go jako argument do polecenia wbudowanego cd.

              Jeżeli  polecenie  pushd  powiodło  się,  to  wykonywane jest również dirs.  Jeżeli
              używana jest pierwsza postać pushd, to zwracane jest 0, chyba że nie udało  się  cd
              na  katalog.   Przy  drugiej  postaci, pushd zwraca 0, chyba że stos katalogów jest
              pusty, podano nieistniejący element stosu lub nie powiodła się zmiana  katalogu  na
              zadany nowy katalog bieżący.

       pwd [-LP]
              Wypisuje  bezwzględną nazwę pliku bieżącego katalogu roboczego.  Pokazana nazwa nie
              zawiera żadnych dowiązań symbolicznych jeśli podano opcję  -P  albo  włączona  jest
              opcja  -o physical wbudowanego polecenia set.  Jeśli użyto opcji -L, wypisana nazwa
              ścieżkowa może zawierać dowiązania symboliczne.  Zwracany kod wynosi  0,  chyba  że
              podczas  odczytu  nazwy bieżącego katalogu pojawi się błąd lub podano nieprawidłową
              opcję.

       read [-ers] [-a anazwa] [-d znak-odst] [-i tekst] [-n nznaki] [-N nznaki] [-p zachęta] [-t
       czas-oczek] [-u fd] [nazwa ...]
              Czytany  jest pojedynczy wiersz ze standardowego wejścia lub z deskryptora pliku fd
              podanego jako argument do opcji -u, dzielony na słowa, w sposób opisany  powyżej  w
              rozdziale  Podział  na  słowa, a jego pierwsze słowo jest przypisywane do pierwszej
              nazwy, drugie słowo do drugiej nazwy i tak dalej. Jeśli jest więcej słów niż  nazw,
              pozostałe  słowa  i  rozdzielające  je  separatory  przypisane zostaną do ostatniej
              nazwy. Jeżeli ze standardowego wejścia przeczytano mniej słów niż podanych  zostało
              nazw,  to  pozostałym nazwom przypisywane są puste wartości. Do podziału wiersza na
              słowa wykorzystywane są znaki z  IFS,  korzystając  z  tych  samych  zasad,  jakich
              powłoka  używa  do  interpretacji (opisanych powyżej w rozdziale Podział na słowa).
              Znaku odwrotnego  ukośnika  (\)  można  użyć  do  usunięcia  specjalnego  znaczenia
              następnego  czytanego znaku oraz do oznaczenia kontynuacji wiersza. Opcje, jeśli je
              podano, mają następujące znaczenie:
              -a anazwa
                     Słowa są przypisywane do  kolejnych  indeksów  zmiennej  tablicowej  anazwa,
                     poczynając  od  0.  anazwa jest kasowana przed przypisaniem nowych wartości.
                     Inne argumenty nazwa są ignorowane.
              -d sep Pierwszy znak sep służy do zakończenia wiersza wejścia, zamiast znaku  nowej
                     linii.
              -e     Jeżeli  standardowe  wejście  pochodzi  z terminala, to do uzyskania wiersza
                     używane jest readline (zobacz READLINE powyżej).  Readline  używa  bieżących
                     (lub  domyślnych,  jeśli edycja wiersza nie była wcześniej aktywna) ustawień
                     edycyjnych.
              -i tekst
                     Gdy do odczytu wiersza jest  używane  readline,  tekst  jest  umieszczany  w
                     buforze edycyjnym przed rozpoczęciem edycji.
              -n nznaki
                     read  powraca  po  przeczytaniu nznaki znaków, zamiast czekać na cały wiersz
                     wejścia, ale przestrzega znaku odstępu  jeśli  odczytano  mniej  niż  nznaki
                     znaków przed odstępem.
              -N nznaki
                     Polecenie read powraca pod przeczytaniu dokładnie nznaków, zamiast czekać na
                     cały wiersz wejścia, chyba że wystąpił koniec wiersza lub  czas  oczekiwania
                     read  minął.  Znaki  odstępu  napotkane w wejściu nie są traktowane w sposób
                     specjalny i nie powodują powrotu read,  dopóki  nie  zostanie  przeczytanych
                     nznaków.  Wynik  nie  jest dzielony na znaki w IFS; założenie jest takie, że
                     zmienna  jest  przypisywana  dokładnie  odczytanym  znakom  (z   wyłączeniem
                     ukośnika; zob. opcja -r poniżej).
              -p zachęta
                     Wyświetla  zachętę  (prompt)  na standardowym wyjściu błędów, bez kończącego
                     znaku nowej linii, przed próbą odczytu wejścia.   Zachęta  wyświetlana  jest
                     tylko jeśli wejście pochodzi z terminala.
              -r     Odwrotny  ukośnik nie działa jako znak specjalny. Traktowany jest jako część
                     wiersza. W szczególności, para odwrotny ukośnik-znak nowej  linii  nie  może
                     być wykorzystana jako kontynuacja wiersza.
              -s     Tryb  cichy. Jeżeli wejście pochodzi z terminala, to znaki nie są powtarzane
                     (bez echa).
              -t czas-oczek
                     Powoduje, że read zwraca niepowodzenie, jeśli w ciągu czas-oczek sekund  nie
                     zostanie  przeczytany  pełny  wiersz  wejścia (lub określona liczba znaków).
                     Czas-oczek może być liczbą dziesiętną z częścią ułamkową  po  znaku  kropce.
                     Opcja  działa  jedynie  gdy  read  odczytuje wejście z terminala, potoku lub
                     innego pliku specjalnego, nie działa natomiast podczas czytania ze  zwykłych
                     plików.  Jeśli  read  przeterminuje  się, read zachowuje odczytane częściowe
                     wejście do podanej zmiennej nazwa. Jeśli czas-oczek ustawiono na 0, to  read
                     zwraca  kod zakończenia natychmiast, bez próby odczytu jakichkolwiek danych.
                     Kodem  zakończenia  jest  0,  jeśli  wejście  jest  dostępne  na  określonym
                     deskryptorze  pliku  lub  zwraca  kod  niezerowy  w  przeciwnym wypadku. Kod
                     zakończenia jest większy od 128, jeśli przekroczono czas oczekiwania.
              -u fd  Czyta wejście z deskryptora pliku fd.

              Jeśli nie podano żadnych nazw, odczytany wiersz przypisywany jest  zmiennej  REPLY.
              Zwracany  kod  zakończenia  wynosi  0,  chyba  że  napotkano  koniec pliku lub read
              przekroczy czas oczekiwania (w takim przypadku jest on większy od 128) wystąpi błąd
              przypisania zmiennej (takich jak przypisanie do zmiennej tylko do odczytu) lub jako
              argument do -u podano nieprawidłowy deskryptor pliku.

       readonly [-aAf] [-p] [nazwa[=słowo] ...]
              Podane nazwy oznaczane są jako readonly; wartości tych nazw nie mogą być  zmieniane
              następującymi później przypisaniami.  Jeśli podano opcję -f, oznaczane są funkcje o
              nazwach  odpowiadających  nazwom.    Opcja   -a   ogranicza   zmienne   do   tablic
              indeksowanych, a -A do tablic asocjacyjnych. Jeśli podano obie opcje, pierwszeństwo
              ma opcja -A. Jeśli nie podano argumentów nazw lub jeśli podano opcję -p, wypisywane
              jest  zestawienie  wszystkich  nazw  o  atrybucie readonly.  Inne opcje mogą zostać
              użyte do ograniczenia wyniku do podzbioru nazw  readonly.  Opcja  -p  powoduje,  że
              wyniki  będą  wyświetlane  w  formacie,  który  może być ponownie wykorzystany jako
              wejście. Jeśli po nazwie  zmiennej  występuje  =słowo,  to  wartość  zmiennej  jest
              ustawiana  na  słowo.  Zwracany  jest kod równy 0, chyba że napotkano nieprawidłową
              opcję, jedna z nazw nie jest poprawną nazwą zmiennej powłoki lub podano -f z nazwą,
              która nie jest funkcją.

       return [n]
              Powoduje,  że  funkcja  przerywa  wykonywanie i zwraca wartość określoną przez n do
              wywołującego. Jeśli pominięto n, kodem zakończenia jest  kod  ostatniego  polecenia
              wykonanego  w  ciele  funkcji.  Jeśli return jest wykonywane przez obsługę pułapki,
              ostatnie  polecenie  służące  do  określenia  statusu  jest   ostatnim   poleceniem
              wykonywanym  przed  obsługą pułapki.  Jeśli  return jest wykonywane podczas pułapki
              DEBUG, ostatnie polecenie użyte do  określenia  statusu  jest  ostatnim  poleceniem
              wykonanym  przez  obsługę pułapki  przed  tym, zanim wywołano return. Jeżeli return
              zostanie użyte poza funkcją, ale podczas  wykonywania  skryptu  przez  polecenie  .
              (source),  powoduje  zatrzymanie wykonywania tego skryptu przez powłokę i zwrócenie
              albo n albo kodu zakończenia ostatniego wykonanego w skrypcie polecenia. Jeśli poda
              się  n,  zwracaną  wartością jest 8 bitów najmniej znaczących. Kod zakończenia jest
              niezerowy, jeśli return poda się argument nienumeryczny lub jeżeli jest  ono  użyte
              poza  funkcją  i  nie  podczas  wykonywania  skryptu  przez . lub source. Wszystkie
              polecenia  związane  z  pułapką  (trap)  RETURN  są  wykonywane  przez  wznowieniem
              wykonywania po powrocie do funkcji lub skryptu.

       set [--abefhkmnptuvxBCEHPT] [-o opcja] [arg ...]
       set [+abefhkmnptuvxBCEHPT] [+o opcja] [arg ...]
              Bez  opcji,  wyświetlane są nazwa i wartość każdej ze zmiennych powłoki, w formacie
              który może być ponownie wykorzystany  jako  wejście  do  ustawiania  lub  ponownego
              ustawiania  aktualnie  ustawionych zmiennych. Zmienne tylko do odczytu nie mogą być
              ponownie ustawiane. W trybie posix, wypisywane są jedynie zmienne  powłoki.  Wyniki
              są  sortowane  zgodnie  z  bieżącymi  ustawieniami  locale.  Gdy  podane  są opcje,
              ustawiają one lub kasują atrybuty powłoki.  Argumenty  pozostałe  po  przetworzeniu
              opcji  traktowane  są jako wartości parametrów pozycyjnych i przypisywane, kolejno,
              do $1, $2, ... $n.  Opcje, jeśli je podano, mają następujące znaczenie:
              -a      Każdej utworzonej lub zmodyfikowanej zmiennej  lub  funkcji  nadawany  jest
                      atrybut  eksportu  oraz  oznaczane  są  one  jako do wyeksportowania ich do
                      środowiska kolejnych poleceń.
              -b      Natychmiast podaje status zakończonych zadań drugoplanowych, zamiast czynić
                      to  przed  następną  podstawową  zachętą.  Działa tylko jeśli włączona jest
                      kontrola zadań.
              -e      Zakończ natychmiast, jeśli potok (który może  składać  się  z  pojedynczego
                      polecenia prostego), listy lub polecenia złożonego (zob.  GRAMATYKA POWŁOKI
                      powyżej) kończy pracę z kodem niezerowym. Powłoka nie  kończy  pracy  jeśli
                      polecenie,  które  się  nie powiodło znajduje się zaraz za słowem kluczowym
                      while lub until, jest częścią tekstu po słowach zastrzeżonych if lub  elif,
                      jest częścią listy && lub ⎪⎪, jest częścią każdego poza ostatnim poleceniem
                      potoku, lub wartość zwrócona przez polecenie  została  odwrócona  przez  !.
                      Jeśli  polecenie  złożone  inne  niż  podpowłoka  zwróci niezerowy status z
                      powodu  niepowodzenia  polecenia,  gdy  -e  było  ignorowane,  powłoka  nie
                      wyjdzie. Przed zakończeniem pracy powłoki wykonywana jest pułapka na sygnał
                      ERR, jeśli była ustawiona. Ta opcja stosuje się  do  środowiska  powłoki  i
                      oddzielnie  do  każdej podpowłoki środowiska (zobacz ŚRODOWISKO WYKONYWANIA
                      POLECEŃ powyżej) i może spowodować zakończenie podpowłok  przed  wykonaniem
                      wszystkich poleceń w podpowłoce.

                      Jeśli polecenie złożone lub funkcja powłoki jest wykonywana w kontekście, w
                      którym -e jest ignorowane, to żadne  z  poleceń  wykonywanych  w  poleceniu
                      złożonym  lub  ciele  funkcji  nie zostanie dotknięte ustawieniem -e, nawet
                      jeśli -e jest ustawione, a polecenie  zwróci  kod  błędu.  Jeśli  polecenie
                      złożone lub funkcja powłoki ustawi -e w trakcie wykonywania w kontekście, w
                      którym -e jest ignorowane, to ustawienie nie odniesie żadnego skutku dopóki
                      polecenie  złożone lub polecenie zawierające wywołanie funkcji nie zakończy
                      się.
              -f      Wyłącza rozwijanie nazw plików.
              -h      Zapamiętuje  położenie  poleceń  przy  wyszukiwania   ich   do   wykonania.
                      Domyślnie włączone.
              -k      Wszystkie   argumenty   występujące   w   postaci   instrukcji  przypisania
                      umieszczane są w środowisku polecenia, nie zaś tylko te, które  poprzedzają
                      nazwę polecenia.
              -m      Tryb  monitorowania.  Włączona jest kontrola zadań. Opcja ta jest domyślnie
                      włączona dla powłok interaktywnych na systemach  ją  obsługujących  (zobacz
                      STEROWANIE ZADANIAMI powyżej). Wszystkie procesy działają w odrębnej grupie
                      procesów. Gdy zadanie działające  w  tle  zakończy  się,  powłoka  wypisuje
                      wiersz zawierający jego kod zakończenia.
              -n      Odczytuje  polecenia,  ale  nie  ich nie wykonuje. Może być wykorzystane do
                      sprawdzenia błędów składni w skrypcie  powłoki.  Ignorowane  przez  powłoki
                      interaktywne.
              -o nazwa-opcji
                      Nazwą-opcji może być jedna z poniższych:
                      allexport
                              To samo, co -a.
                      braceexpand
                              To samo, co -B.
                      emacs   Użyj  interfejsu  edycji  wiersza  poleceń w stylu emacsa. Włączone
                              domyślnie,  jeśli  powłoka  jest  interaktywna,  chyba  że  została
                              uruchomiona  z  opcją  --noediting.  Wpływa to również na interfejs
                              edycyjny używany przez read -e.
                      errexit To samo, co -e.
                      errtrace
                              To samo, co -E.
                      functrace
                              To samo, co -T.
                      hashall To samo, co -h.
                      histexpand
                              To samo, co -H.
                      history Włącza historię poleceń, jak opisano  powyżej  w  sekcji  HISTORII.
                              Opcja ta jest domyślnie włączona w powłokach interaktywnych.
                      ignoreeof
                              Efekt   jest   taki,   jakby  zostało  wykonane  polecenie  powłoki
                              ``IGNOREEOF=10'' (zobacz powyżej Zmienne powłoki).
                      keyword To samo, co -k.
                      monitor To samo, co -m.
                      noclobber
                              To samo, co -C.
                      noexec  To samo, co -n.
                      noglob  To samo, co -f.
                      nolog   Obecnie ignorowane.
                      notify  To samo, co -b.
                      nounset To samo, co -u.
                      onecmd  To samo, co -t.
                      physical
                              To samo, co -P.
                      pipefail
                              Gdy ustawione, zwracana wartość potoku  jest  wartością  ostatniego
                              (po  prawej) polecenia, które zakończyło się z kodem niezerowym lub
                              zero, gdy wszystkie polecenia w  potoku  zakończyły  się  sukcesem.
                              Opcja jest domyślnie wyłączona.
                      posix   Zmienia  zachowanie bash tam, gdzie domyślne działanie różni się od
                              standardu POSIX, tak by  spełniać  standard  (tryb  posix).  Więcej
                              informacji o tym, jak tryb posix wpływa na zachowanie powłoki można
                              znaleźć w dokumencie do którego odsyła ZOBACZ TAKŻE.
                      privileged
                              To samo, co -p.
                      verbose To samo, co -v.
                      vi      Używa interfejsu edycji wiersza  poleceń  w  stylu  vi.  Wpływa  to
                              również na interfejs edycyjny używany przez read -e.
                      xtrace  To samo, co -x.
                      Jeżeli  podano  -o  bez  nazwy-opcji,  to  wypisywane są wartości bieżących
                      opcji.   Jeżeli  podano  +o  bez  nazwy-opcji,  na   standardowym   wyjściu
                      wyświetlana  jest  seria  poleceń set potrzebnych do odtworzenia aktualnych
                      ustawień opcji.
              -p      Włącza tryb  uprzywilejowany  (privileged).  W  tym  trybie  pliki  $ENV  i
                      $BASH_ENV  nie  są  przetwarzane,  funkcje  powłoki  nie są dziedziczone ze
                      środowiska, a zmienne  SHELLOPTS,  BASHOPTS,  CDPATH  i  GLOBIGNORE,  jeśli
                      występują w środowisku, są ignorowane.  Jeśli powłoka została uruchomiona z
                      efektywnym id użytkownika (grupy) różnym od id rzeczywistego a  nie  podano
                      opcji  -p, to podejmowane są opisane wyżej akcje a efektywny id użytkownika
                      jest ustawiany  na  identyfikator  rzeczywisty.  Jeżeli  przy  uruchamianiu
                      podano   opcję   -p,   to  efektywny  identyfikator  użytkownika  nie  jest
                      resetowany.  Wyłączenie tej opcji  powoduje,  że  identyfikatory  efektywne
                      użytkownika i grupy zostaną ustawione na identyfikatory rzeczywiste.
              -t      Kończy pracę po przeczytaniu i wykonaniu jednego polecenia.
              -u      Podczas  interpretacji parametrów traktuje nieustawione zmienne i parametry
                      (poza parametrami specjalnymi "@" i "*") jako błąd.  Jeżeli wykonywana jest
                      próba interpretacji nieustawionej zmiennej, to powłoka wypisuje komunikat o
                      błędzie i, jeśli nie jest interaktywna, kończy pracę z niezerowym kodem.
              -v      Wypisuje wiersze wejściowe powłoki przy ich odczytywaniu.
              -x      Po interpretacji każdego polecenia prostego, poleceń for, case i select lub
                      polecenia  arytmetycznego  for  wyświetla  zinterpretowaną  wartość PS4, po
                      której następuje polecenie i jego zinterpretowane argumenty  lub  powiązana
                      lista słów.
              -B      Powłoka  wykonuje  interpretacją  nawiasów  (zobacz  Interpretacja nawiasów
                      powyżej). Domyślnie włączone.
              -C      Jeśli  włączone,  bash  nie  nadpisuje  istniejącego  pliku   przy   użyciu
                      operatorów  przekierowania  >,  >&  i  <>.   Można  to ominąć tworząc pliki
                      wyjściowe przy użyciu operatora przekierowania >| zamiast >.
              -E      Gdy  ustawiona,  pułapka  ERR  jest  dziedziczona  przez  funkcje  powłoki,
                      uzupełnienia  poleceń  i  polecenia  wykonywane  w  środowisku  podpowłoki.
                      Pułapka ERR normalnie nie jest dziedziczona w takich przypadkach.
              -H      Włącza zastępowanie historii w stylu !.  Opcja ta jest  domyślnie  włączona
                      dla powłoki interaktywnej.
              -P      Jeżeli  jest  ustawiona,  to  powłoka nie rozwiązuje dowiązań symbolicznych
                      podczas wykonywania poleceń zmieniających bieżący katalog roboczy, jak  cd.
                      Używa zamiast tego fizycznej struktury katalogów. Domyślnie, bash podąża za
                      logicznym łańcuchem katalogów  podczas  wykonywania  poleceń  zmieniających
                      bieżący katalog roboczy.
              -T      Gdy  ustawiona,  pułapki  DEBUG  i  RETURN  są  dziedziczone  przez funkcje
                      powłoki,  uzupełnienia  poleceń  i  polecenia   wykonywane   w   środowisku
                      podpowłoki.  Pułapki  DEBUG i RETURN nie są normalnie dziedziczone w takich
                      przypadkach.
              --      Jeżeli po tej opcji nie występują żadne argumenty, to  parametry  pozycyjne
                      są  kasowane.  W  przeciwnym  razie,  parametry  pozycyjne  ustawiane są na
                      argumenty, nawet jeśli niektóre z nich zaczynają się od znaku -.
              -       Sygnalizuje koniec  opcji,  powodując  przypisanie  wszystkich  pozostałych
                      argumentów  do parametrów pozycyjnych.  Opcje -x i -v są wyłączane.  Jeżeli
                      nie ma argumentów, to parametry pozycyjne pozostają bez zmian.

              Opcje są domyślnie wyłączone, chyba  że  wskazano  inaczej.   Użycie  +  zamiast  -
              spowoduje,  że  opcje te zostaną wyłączone.  Opcje mogą także zostać określone jako
              argumenty wywołania powłoki.  Bieżący zestaw opcji można znaleźć w  $-.   Zwracanym
              kodem jest zawsze prawda, chyba że napotkano nieprawidłową opcję.

       shift [n]
              Parametrom pozycyjnym od n+1 ... zmienia nazwy na $1 ..... Parametry reprezentowane
              przez liczby $# w dół do $#-n+1 są usuwane.  n musi być liczbą  nieujemną  mniejszą
              lub równą $#.  Jeżeli n wynosi 0, parametry nie są zmieniane.  Jeżeli nie podano n,
              zakłada się, że wynosi 1.  Jeżeli n jest większe od $#, parametry pozycyjne nie  są
              zmieniane.   Kod  zakończenia  jest większy od zera jeżeli n jest większe od $# lub
              mniejsze od zera; w przeciwnym wypadku 0.

       shopt [-pqsu] [-o] [nazwa_opcji ...]
              Przełącza  wartości   ustawień   sterujących   opcjonalnym   zachowaniem   powłoki.
              Ustawieniami  mogą  być te wypisane poniżej lub, gdy użyje się opcji -o, ustawienia
              dostępne z opcją -o do polecenia wbudowanego set.Bez żadnych opcji,  albo  z  opcją
              -p, wyświetlana jest lista wszystkich dających się ustawić opcji, ze wskazaniem dla
              każdej czy jest  ona  ustawiona  czy  nie.   Opcja  -p  powoduje,  że  wyniki  będą
              wyświetlane  w  postaci  dającej  się ponownie wykorzystać jako wejście.  Pozostałe
              opcje mają następujące znaczenie:
              -s     Włącz (ustaw) każdą nazwę_opcji.
              -u     Wyłącz (usuń) każdą nazwę_opcji.
              -q     Zaniechaj zwykłego wyświetlania (tryb cichy); zwracany kod  wskazuje  na  to
                     czy  nazwa_opcji jest ustawiona czy nie ustawiona.  Jeżeli z -q podano wiele
                     argumentów  nazw_opcji,  to  zwracanym  kodem  jest  zero,   gdy   wszystkie
                     nazwy_opcji są włączone; w przeciwnym razie kod jest niezerowy.
              -o     Ogranicza  wartości  nazwy_opcji  do  wartości  zdefiniowanych  dla opcji -o
                     wbudowanego polecenia set.

              Jeżeli użyto albo -s albo -u bez argumentów nazw_opcji, shopt pokazuje  jedynie  te
              opcji,  które,  odpowiednio,  są  ustawione  bądź nieustawione. Jeżeli nie wskazano
              inaczej, opcje shopt są domyślnie wyłączone (nie ustawione).

              Przy listowaniu opcji zwracany jest  kod  zerowy  jeśli  wszystkie  nazwy_opcji  są
              włączone,  niezerowy  w  przeciwnym  wypadku.  Przy  ustawianiu lub kasowaniu opcji
              zwracany jest zerowy kod, chyba że nazwa_opcji nie jest poprawną opcją powłoki.

              Lista opcji shopt obejmuje:

              autocd  Jeśli jest ustawiona, nazwa polecenia będąca nazwą katalogu jest wykonywana
                      identycznie,  jak gdyby była argumentem polecenia cd. Opcja ta jest używana
                      tylko w powłokach interaktywnych.
              cdable_vars
                      Jeśli  jest  ustawiona,  to  nie  będący  katalogiem  argument  wbudowanego
                      polecenia  cd  uważany  jest za nazwę zmiennej; wartością tej zmiennej jest
                      katalog, na który ma nastąpić zmiana.
              cdspell Jeśli jest ustawiona, to pomniejsze błędy w pisowni  składowej  katalogu  w
                      poleceniu  cd  będą  poprawiane.   Sprawdzenie takich błędów obejmuje znaki
                      zamienione miejscami, znaki pominięte i  pojedyncze  zbędne  znaki.  Jeżeli
                      znaleziono  poprawkę,  wypisywana  jest  poprawna  nazwa  pliku a polecenie
                      kontynuuje działanie. Opcja ta  jest  wykorzystywana  tylko  przez  powłoki
                      interaktywne.
              checkhash
                      Jeśli  jest  ustawiona,  bash  sprawdza  przed  próbą  wykonania  polecenia
                      znalezionego w tablicy mieszającej, czy polecenie to istnieje.  Jeżeli  już
                      nie istnieje, to wykonywane jest zwykłe przeszukiwanie ścieżki.
              checkjobs
                      Jeśli   jest   ustawiona,  bash  wypisuje  status  każdego  zatrzymanego  i
                      działającego zadania, przed wyjściem z powłoki interaktywnej. Jeśli  jakieś
                      zadanie  działa,  powoduje  to  odroczenia wyjścia do momentu, gdy zostanie
                      przeprowadzona druga próba wyjścia, bez  uruchamiania  dodatkowych  poleceń
                      pomiędzy  próbami (patrz KONTROLA ZADAŃ powyżej). Powłoka zawsze wstrzymuje
                      wychodzenie, gdy jakiekolwiek zadanie jest zatrzymane.
              checkwinsize
                      Jeżeli jest ustawione, bash sprawdza rozmiar okna po  każdym  poleceniu  i,
                      jeśli zachodzi potrzeba, aktualizuje wartość LINES i COLUMNS.
              cmdhist Jeżeli  jest  ustawione,  bash  usiłuje zapisać wszystkie wiersze polecenia
                      wielowierszowego w tej samej pozycji historii. Pozwala to na łatwą  ponowną
                      edycję poleceń obejmujących wiele wierszy.
              compat31
                      Gdy  jest  ustawiona, bash używa swego zachowania z wersji 3.1, respektując
                      argumenty   cytowane   do   operatora   =~   polecenia    warunkowego    [[
                      orazporównywanie   łańcuchów   z  uwzględnieniem  locale,  gdy  używane  są
                      operatory < i >  polecenia  warunkowego  [[.  Wersje  do  bash-4.1  używają
                      kolejności   ASCII   i  strcmp(3);  wersje  od  bash-4.1  używają  bieżącej
                      kolejności locale i strcoll(3).
              compat32
                      Gdy jest ustawiona, bash używa swego zachowania z wersji  3.2,  respektując
                      porównywanie  łańcuchów z uwzględnieniem locale, gdy używane są operatory <
                      i > polecenia warunkowego [[ (patrzy opis  wyżej)  oraz  efekt  przerywania
                      listy  poleceń.  Bash w wersji 3.2 i wcześniejszych po przerwaniu bieżącego
                      polecenia kontynuował do następnego polecenia w liście.
              compat40
                      Gdy jest ustawiona, bash używa swego zachowania z wersji  4.0,  respektując
                      porównywanie  łańcuchów z uwzględnieniem locale, gdy używane są operatory <
                      i > polecenia warunkowego [[ (zob. opis compat31)  oraz  efekt  przerywania
                      listy  poleceń.  Bash  w  wersji  4.0  i  późniejszych przerywa listę jeśli
                      powłoka otrzyma przerwanie; poprzednie wersje  kontynuowały  do  następnego
                      polecenia w liście.
              compat41
                      Gdy   ustawiona,  bash,  gdy  jest  w  trybie  posix,  traktuje  pojedyncze
                      cudzysłowy  w  interpretacji  ujętej  w  podwójne  cudzysłowy,  jako   znak
                      specjalny.  Pojedynczy cudzysłów musi pasować (musi występować ich parzysta
                      liczba), a znaki pomiędzy  pojedynczymi  cudzysłowami  są  traktowane  jako
                      cytowane.  Jest to zachowanie trybu posix w wersji 4.1. Domyślne zachowania
                      basha pozostaje takie samo, jak w poprzednich wersjach.
              compat42
                      Gdy ustawiona, bash nie przeprowadza zamiany łańcuchów przy w  podstawianiu
                      wzorców rozwijanych słów za pomocą usuwania cytowań.
              compat43
                      Jeśli  jest  ustawiona,  bash  nie  ostrzega przy próbie użycia cytowanego,
                      złożonego przypisania tablicy jako argumentu do declare,  co  powoduje,  że
                      błędy  interpretacji  słów  stają się niekrytyczne, powodując niepowodzenie
                      bieżącego  polecenia  (domyślne  zachowanie  to  uczynienie   tych   błędów
                      krytycznymi,  co  prowadzi  do zakończenia powłoki) i nie resetowanie stanu
                      pętli przy wykonywaniu funkcji  powłoki  (co  pozwala  poleceniom  break  i
                      continue w funkcji powłoki wpływać na pętle w wywołującym je środowisku).
              complete_fullquote
                      Gdy  ustawiona,  bash cytuje wszystkie metaznaki powłoki w nazwach plików i
                      katalogów w trakcie wykonywania uzupełniania. Gdy nieustawiona, bash  usuwa
                      metaznaki takie jak znak dolara z zestawu cytowanych znaków w uzupełnianych
                      nazwach plików, gdy te metaznaki pojawiają się w odniesieniach do zmiennych
                      powłoki,  w  słowach do uzupełnienia. Oznacza to, że znaki dolara w nazwach
                      zmiennych uzupełnianych do katalogów nie będą cytowane, jednak znaki dolara
                      pojawiające się w nazwach plików w ogóle nie będą cytowane. Jest to aktywne
                      tylko  wówczas,  gdy  bash   używa   odwrotnego   ukośnika   do   cytowania
                      uzupełnianych  nazw  plików.  Zmienna  ta jest domyslnie ustawiana, co jest
                      domyślnym zachowaniem basha w wersjach do 4.2.
              direxpand
                      Gdy ustawiona, bash zastępuje nazwy katalogów wynikami rozwijania słów przy
                      przeprowadzaniu  uzupełnienia  nazw  plików.  W  ten  sposób zmieniana jest
                      zawartość bufora edycji readline. Jeśli nie jest ustawiona, bash stara  się
                      zachować treść wpisaną przez użytkownika.
              dirspell
                      Jeżeli  jest ustawiona, bash stara się poprawić pomyłki w nazwach katalogów
                      podczas uzupełniania słów, jeśli nazwa katalogu  wprowadzonego  pierwotnie,
                      nie istnieje.
              dotglob Jeżeli  jest  ustawione,  to bash do wyników rozwinięcia nazw plików włącza
                      także nazwy plików rozpoczynające się kropką `.'.
              execfail
                      Jeżeli jest ustawione, to powłoka nie-interaktywna nie zakończy  pracy  nie
                      mogąc  wykonać  pliku określonego jako argument wbudowanego polecenia exec.
                      Powłoka interaktywna nie kończy pracy, jeśli exec zawiedzie.
              expand_aliases
                      Jeżeli jest ustawiona, aliasy  są  interpretowane  jak  opisano  powyżej  w
                      ALIASY.  Opcja ta jest włączona domyślnie dla powłok interaktywnych.
              extdebug
                      Jeśli  jest  ustawiona  przy  wywołaniu powłoki, powoduje wykonanie profilu
                      debuggera przed uruchomieniem powłoki, identycznie  jak  opcja  --debugger.
                      Jeśli jest ustawiona po wywołaniu, włączane jest zachowanie przeznaczone do
                      użycie przez debuggera:
                      1.     Opcja  -F  wbudowanego  polecenia  declare  wyświetla  nazwę   pliku
                             źródłowego  i  numer  wiersza  odpowiadający  każdej  nazwie funkcji
                             podanej jako argument.
                      2.     Jeśli polecenie  uruchomione  przez  pułapkę  DEBUG  zwraca  wartość
                             niezerową, kolejne polecenie jest pomijane i nie jest wykonywane.
                      3.     Jeśli  polecenie uruchamiane przez pułapkę DEBUG zwróci wartość 2, a
                             powłoka  wykonywana  w  podprogramie  (funkcja  powłoki  lub  skrypt
                             powłoki  wykonywany  wbudowanymi  .  lub source), to symulowane jest
                             wywołanie do return.
                      4.     BASH_ARGC i BASH_ARGV są aktualizowane zgodnie  z  opisem  w  opisie
                             tych zmiennych powyżej.
                      5.     Włączone  jest  śledzenie  funkcji:  podstawianie  poleceń,  funkcje
                             powłoki i podpowłoki przywołane za pomocą ( polecenie  )  dziedziczą
                             pułapki DEBUG i RETURN.
                      6.     Włączone   jest  śledzenie  błędów:  podstawianie  poleceń,  funkcje
                             powłoki i podpowłoki przywołane za pomocą ( polecenie  )  dziedziczą
                             pułapkę ERR.
              extglob Jeśli  jest włączona, włączane są rozszerzone funkcje dopasowywania wzorców
                      opisane powyżej w Rozwijanie nazw plików.
              extquote
                      Jeżeli jest włączona, cytowania $'łańcuch' and $"łańcuch" są przeprowadzane
                      wewnątrz  interpretacji  ${parametr}  ujętych  w podwójne cudzysłowy. Opcja
                      jest domyślnie włączona.
              failglob
                      Jeśli jest włączona, wzorce do których nie dopasowano nazw  plików  podczas
                      rozwinięcia nazw plików, dają w wyniku błąd rozwinięcia (interpretacji).
              force_fignore
                      Jeśli jest ustawiona, przyrostki określone zmienną powłoki FIGNORE powodują
                      ignorowanie słów  podczas  przeprowadzania  uzupełniania  słów  nawet,  gdy
                      ignorowane słowa są jedynymi dostępnymi uzupełnieniami. Proszę zapoznać się
                      z ZMIENNE POWŁOKI, aby uzyskać opis FIGNORE. Opcja jest domyślnie włączona.
              globasciiranges
                      Jeśli jest ustawiona, wyrażenia  zakresu  użyte  we  wzorcu  dopasowującego
                      wyrażenia  nawiasowe (zob.  Dopasowanie wzorca powyżej) zachowują się jak w
                      tradycyjnym locale C przy przeprowadzaniu porównań. Znaczy to, że sekwencja
                      sortowania  bieżącego  locale  nie  jest  brana  pod uwagę, więc b nie jest
                      sortowane między A i B, a wielkie i małe znaki ASCII są sortowane razem.
              globstar
                      Gdy jest ustawiona, wzorzec ** używany w kontekście rozwijania nazw plików,
                      dopasowuje  wszystkie  pliki  i  zero  lub więcej katalogów i podkatalogów.
                      Jeśli po  wzorcu  występuje  /,  to  dopasowywane  są  jedynie  katalogi  i
                      podkatalogi.
              gnu_errfmt
                      Jeżeli   jest   ustawiona,   komunikaty  błędów  powłoki  są  wypisywane  w
                      standardowym formacie błędów GNU.
              histappend
                      Jeżeli jest ustawiona, to do pliku  o  nazwie  wskazanej  zmienną  HISTFILE
                      podczas kończenia pracy przez powłokę dodawana jest lista historii, zamiast
                      nadpisywania tego pliku listą.
              histreedit
                      Jeżeli jest ustawione, a używane jest readline, to użytkownik ma  możliwość
                      ponownej edycji nieudanego podstawienia historii historii.
              histverify
                      Jeżeli  jest  ustawione,  a  używane  jest readline, to wyniki podstawiania
                      historii nie są natychmiast  przesyłane  do  analizatora  powłoki.  Zamiast
                      tego,   wiersz  wynikowy  ładowany  jest  do  bufora  edycyjnego  readline,
                      pozwalając na dalsze zmiany.
              hostcomplete
                      Jeżeli jest ustawione,  a  używane  jest  readline,  bash  będzie  usiłować
                      wykonać uzupełnianie nazwy hosta podczas uzupełniania słowa zawierającego @
                      (zobacz Uzupełnianie w READLINE powyżej).  Domyślnie włączone.
              huponexit
                      Jeżeli jest ustawione, to bash wyśle SIGHUP  do  wszystkich  zadań  podczas
                      kończenia pracy interaktywnej powłoki zgłoszeniowej.
              inherit_errexit
                      Jeśli   jest  ustawione,  uzupełnianie  poleceń  dziedziczy  wartość  opcji
                      errexit, zamiast kasować ją w środowisku podpowłoki. Opcja ta jest włączana
                      jeśli włączony jest tryb posix.
              interactive_comments
                      Jeśli  jest  włączone,  pozwala by słowo rozpoczynające się od # powodowało
                      pominięcie tego słowa i wszystkich pozostałych  znaków  wiersza  w  powłoce
                      interaktywnej (zobacz powyżej KOMENTARZE). Opcja domyślnie włączona.
              lastpipe
                      Jeśli  jest ustawiona, a kontrola zadań nie jest aktywna, powłoka uruchamia
                      ostatnie polecenie potoku, który nie jest  wykonywany  w  tle,  w  bieżącym
                      środowisku powłoki.
              lithist Jeśli   jest  ustawione,  a  włączona  jest  opcja  cmdhist,  to  polecenia
                      wielowierszowe zachowywane są w historii w miarę  możliwości  z  osadzonymi
                      znakami nowej linii zamiast przy użyciu średników jako separatorów.
              login_shell
                      Powłoka  ustawia  tę  opcję  jeśli  zostanie  uruchomiona jako zgłoszeniowa
                      (zobacz WYWOŁANIE powyżej).  Ta wartość nie może być zmieniona.
              mailwarn
                      Jeżeli jest ustawione, zaś do pliku, w którym sprawdza pocztę bash  sięgano
                      od  czasu  ostatniego  sprawdzania, to zostanie wyświetlony komunikat ,,The
                      mail  in  plikpoczty  has  been  read”   (Poczta   w   plikpoczty   została
                      przeczytana).
              no_empty_cmd_completion
                      Jeśli  jest  ustawione,  i  stosowane  jest  readline,  to  bash nie będzie
                      usiłował szukać w PATH możliwych uzupełnień, gdy próba uzupełniania wystąpi
                      w pustym wierszu.
              nocaseglob
                      Jeśli  zostało ustawione, to bash przy rozwijaniu nazw plików dopasowuje je
                      nie zwracając uwagi  na  wielkość  liter  (zobacz  Rozwijanie  nazw  plików
                      powyżej).
              nocasematch
                      Gdy  jest  ustawiona,  bash  dopasowuje  wzorce  ignorując  wielkość liter,
                      podczas wykonywania dopasowania, w czasie wykonywania  poleceń  warunkowych
                      case  lub  [[, przy wykonywaniu interpretacji zastępowania słów wzorców lub
                      podczas  filtrowania  możliwych  dopełnień  jako   części   programowalnych
                      dopełnień.
              nullglob
                      Jeśli  jest  ustawione, to, bash pozwala by wzorce nie dopasowujące żadnych
                      plików (zobacz Rozwijanie nazw plików powyżej)   rozwijały  się  w  łańcuch
                      pusty, zamiast na same siebie.
              progcomp
                      Jeżeli  jest  ustawione, to włączone są usługi programowalnego uzupełniania
                      (zobacz powyżej Programowalne uzupełnianie). Domyślnie włączone.
              promptvars
                      Jeżeli  jest  ustawione,  to  łańcuchy  zachęty   podlegają   interpretacji
                      zmiennych  i  podstawianiu  parametrów  po interpretacji zachęty opisanej w
                      ZACHĘTA powyżej. Opcja ta jest domyślnie włączona.
              restricted_shell
                      Powłoka ustawia tę opcję  jeśli  została  uruchomiona  w  trybie  okrojonym
                      (zobacz POWŁOKA OKROJONA poniżej).  Wartość ta nie może być zmieniona.  Nie
                      jest ona resetowana podczas odczytu plików  startowych,  pozwalając  im  na
                      odkrycie czy powłoka jest okrojona czy nie.
              shift_verbose
                      Jeżeli  jest ustawiona, to wbudowane shift wypisuje komunikat o błędzie gdy
                      liczba przesunięć (przez shift) przekracza liczbę parametrów pozycyjnych.
              sourcepath
                      Jeśli jest ustawiona, to  polecenie  wbudowane  source  (.)  posługuje  się
                      wartością  PATH  do  znalezienia  katalogu  zawierającego  plik podany jako
                      argument.  Opcja domyślnie włączona.
              xpg_echo
                      Jeżeli jest ustawiona, to dla  wbudowanego  polecenia  echo  włączane  jest
                      domyślne interpretowanie sekwencji specjalnych z odwrotnym ukośnikiem.

       suspend [-f]
              Zawiesza wykonywanie tej powłoki do otrzymania przez nią sygnału SIGCONT.  Opcja -f
              mówi, by nie narzekać, jeśli użyto  suspend  w  powłoce  zgłoszeniowej;  po  prostu
              zawiesić   mimo  to.  Kodem  zwracanym  jest  0,  chyba  że  powłoka  jest  powłoką
              zgłoszeniową i nie podano opcji -f, lub gdy nie jest włączona kontrola zadań.

       test wyraż
       [ wyraż ]
              Zwraca kod 0 (prawda)  lub  1  (fałsz)  w  zależności  od  interpretacji  wyrażenia
              warunkowego  wyraż.   każdy  operator  i  operand  musi  być  odrębnym  argumentem.
              Wyrażenia składając się ze składowych opisanych powyżej w WYRAŻENIA WARUNKOWE. test
              nie  akceptuje  żadnych  opcji,  ani nie akceptuje i nie ignoruje argumentu -- jako
              wskaźnika końca opcji.

              Wyrażenia mogą być łączone przy użyciu poniższych operatorów, podanych w kolejności
              malejącego  priorytetu. Ich interpretacja zależy od liczby argumentów; patrz niżej.
              Priorytet operatorów jest używany gdy występuje pięć argumentów lub więcej.
              ! wyraż
                     Prawda jeśli wyraż jest fałszem.
              ( wyraż )
                     Zwraca wartość wyraż.  Może być stosowane  do  obejścia  zwykłej  kolejności
                     operatorów.
              wyraż1 -a wyraż2
                     Prawda jeśli oba: wyraż1 i wyraż2 są prawdziwe.
              wyraż1 -o wyraż2
                     Prawda jeśli wyraż1 lub wyraż2 jest prawdziwe.

              test  i [ interpretują wyrażenia warunkowe posługując się zestawem reguł opartych o
              liczbę argumentów.

              0 argumentów
                     Wyrażenie jest fałszywe.
              1 argument
                     Wyrażenie jest prawdziwe wtedy i tylko wtedy gdy  argument  nie  jest  pusty
                     (null).
              2 argumenty
                     Jeśli pierwszym argumentem jest !, to wyrażenie jest prawdziwe wtedy i tylko
                     wtedy gdy drugi argument jest pusty. Jeśli pierwszy argument jest  jednym  z
                     jednoargumentowych  operatorów  warunkowych  podanych  powyżej  w  WYRAŻENIA
                     WARUNKOWE, to wyrażenie jest prawdziwe  jeżeli  test  jednoargumentowy  jest
                     prawdziwy.   Jeżeli  pierwszy  argument nie jest poprawnym jednoargumentowym
                     operatorem warunkowym, to wyrażenie ma wartość fałsz.
              3 argumenty
                     Następujące warunki  są  stosowane  w  wypisanej  kolejności.  Jeżeli  drugi
                     argument  jest  jednym  z  dwuargumentowych  operatorów warunkowych podanych
                     powyżej  w  WYRAŻENIA  WARUNKOWE,   to   wynik   wyrażenia   jest   wynikiem
                     dwuargumentowego testu z zastosowaniem pierwszego i trzeciego argumentu jako
                     operandów. Operatory -a i -o są uważane za dwuargumentowe,  jeśli  występują
                     trzy  argumenty.  Jeśli  pierwszym  argumentem  jest  !,  to wartość stanowi
                     negację testu dwuargumentowego przy użyciu drugiego i  trzeciego  argumentu.
                     Jeśli  pierwszym  argumentem jest dokładnie ( a trzecim argumentem dokładnie
                     ), to wynik jest jednoargumentowym testem drugiego argumentu.  W pozostałych
                     przypadkach wyrażenie jest fałszywe.
              4 argumenty
                     Jeśli  pierwszym  argumentem jest !, to wynik jest negacją trójargumentowego
                     wyrażenia  złożonego  z  pozostałych  argumentów.   W  przeciwnym   wypadku,
                     wyrażenie  jest  poddawanie  analizie  składni  i  interpretowane  zgodnie z
                     priorytetami przy zastosowaniu reguł podanych powyżej.
              5 lub więcej argumentów
                     Wyrażenie jest  poddawanie  analizie  składni  i  interpretowane  zgodnie  z
                     priorytetami przy zastosowaniu reguł podanych powyżej.

              Gdy  operatory  <  i  >  są  używane  z  test  lub  [, sortują zgodnie z porządkiem
              leksykograficznym używając kolejności ASCII.

       times  Wypisuje sumaryczne czasy użytkownika i systemu  dla  powłoki  i  procesów  z  niej
              uruchomionych. Kodem zwracanym jest 0.

       trap [-lp] [argument] [sigspec ...]
              Polecenie  argument  ma  zostać odczytane i wykonane, gdy powłoka otrzyma sygnał(y)
              sigspec.  Jeśli nie występuje argument (i występuje pojedynczy sigspec) lub jest to
              -,  to  wszystkie  podane  sygnały  resetowane  są  do  swych  wartości pierwotnych
              (wartości, jakie miały przy wejściu do powłoki).  Jeżeli  argument  jest  łańcuchem
              pustym,  to  sygnał  określony  przez każde sigspec jest ignorowany przez powłokę i
              polecenia,  jakie  ona  wywołuje.   Jeżeli  nie  wystąpił  argument  a  podano  -p,
              wyświetlane  są  polecenia  związane  z  przechwyceniem każdego z sygnałów sigspec.
              Jeżeli nie podano żadnych argumentów lub jeśli podano tylko -p,  to  trap  wypisuje
              listę  poleceń związanych z każdym z numerów sygnałów.  Każde -l powoduje wypisanie
              przez powłokę listy nazw sygnałów i odpowiadających im  nazw.  Każdy  sigspec  jest
              albo  nazwą sygnału zdefiniowaną w <signal.h> albo numerem sygnału.  Wielkość liter
              nazw sygnałów nie ma znaczenia, a przedrostek SIG jest opcjonalny.

              Jeżeli sigspec jest sygnałem EXIT (0), to polecenie argument wykonywane  jest  przy
              kończeniu  pracy  przez  powłokę.  Jeżeli  sigspec  jest  równe DEBUG, to polecenie
              argument wykonywane jest po każdym  poleceniu  prostym,  poleceniach  for,  case  i
              select, każdym poleceniem arytmetycznym for i przed wykonaniem pierwszego polecenia
              w funkcji powłoki (zobacz GRAMATYKA POWŁOKI powyżej). Proszę zapoznać się z  opisem
              opcji  extdebug do wbudowanego shopt, aby dowiedzieć się więcej na temat jej wpływu
              na pułapkę DEBUG. Jeśli sigspec to RETURN, to polecenie  argument  jest  wykonywane
              zawsze,  gdy  funkcja powłoki lub skrypt wykonywany wbudowanymi . lub source kończą
              swe wykonanie.

              Jeśli sigspec jest ERR, wówczas polecenie argument  wykonywane  gdy  potok  (mogący
              składać  się  z  jednego  polecenia  prostego), lista, lub polecenie złożone zwróci
              niezerowy kod zakończenia. Pułapka  zastawiona  na  ERR  nie  jest  wykonywana  gdy
              polecenie,  które  zakończyło  się  niepowodzeniem  jest  występuje bezpośrednio po
              słowach kluczowych while lub until,  jest  częścią  testu  instrukcji  if,  częścią
              poleceń  wykonywanych  w listach && lub || z wyjątkiem polecenia za ostatnim && lub
              ||, dowolnym poleceniem w potoku z wyjątkiem ostatniego lub jeśli wartość  zwracana
              przez  to polecenie jest wstawiana za pomocą !. Identyczne warunki są przestrzegane
              przez opcję errexit.

              Sygnały  ignorowane  przy  wejściu  do  powłoki  nie  mogą  być  przechwycone   ani
              zresetowane.   W  procesie  potomnym,  podczas jego tworzenia, sygnały przechwycone
              resetowane są do swych wartości pierwotnych.   Zwracanym  kodem  jest  fałsz  jeśli
              którykolwiek z sigspec jest nieprawidłowy; w przeciwnym razie trap zwraca true.

       type [-aftpP] nazwa [nazwa ...]
              Bez  opcji  wskazuje,  jak  powinna być interpretowana każda z nazw, jeśli zostanie
              użyta jako nazwa polecenia.  Jeżeli użyto opcji -t, to type wypisuje łańcuch będący
              jednym  z  alias, keyword, function, builtin lub file, jeśli nazwa jest odpowiednio
              aliasem, zastrzeżonym słowem powłoki, funkcją, poleceniem  wbudowanym  lub  plikiem
              dyskowym.   Jeśli  nie  znaleziono  nazwy,  to  nie  jest wypisywane nic i jako kod
              zakończenia zwracany jest fałsz.  Jeśli posłużono się opcją -p to type zwraca  albo
              nazwę  pliku  dyskowego,  który zostałby wykonany jeśli nazwa zostałaby podana jako
              nazwa polecenia, albo nic jeśli ``type -t name''  nie  zwróciłoby  file.  Opcja  -P
              wymusza  na  PATH  wyszukiwanie  każdego  name,  nawet  jeśli  ``type -t name'' nie
              zwróciłoby file. Jeśli polecenie zostało zapamiętane poleceniem hash, to  -p  i  -P
              wypisuje  jego  wartość,  który  niekoniecznie  jest  plikiem pojawiającym się jako
              pierwszy w  PATH.  Jeśli  użyto  opcji  -a,  to  type  wypisuje  wszystkie  miejsca
              zawierające  plik  wykonywalny  o  nazwie  nazwa.  Aliasy i funkcje są uwzględniane
              wyłącznie jeśli nie podano również opcji -p. Tablica zapamiętanym poleceń nie  jest
              sprawdzana,  jeśli  użyto  -a. Opcja -f przesłania funkcję wyszukiwania powłoki jak
              wbudowanym command. type zwraca prawdę  jeśli  odnaleziono  wszystkie  argumenty  i
              fałsz, gdy któregoś z nich nie odnaleziono.

       ulimit [-HSabcdefiklmnpqrstuvxPT [limit]]
              Zapewnia  kontrolę  nad zasobami dostępnymi powłoce i procesów jakie ona uruchamia,
              na systemach umożliwiających taką kontrolę.  Opcje -H i -S określają, że dla danego
              zasobu  ustawiane  jest twarde (hard) lub miękkie (soft) ograniczenie. Ograniczenie
              twarde  nie  może  być  zwiększane  przez  zwykłego  użytkownika   po   ustawieniu;
              ograniczenie  miękkie  może  być  zwiększane  aż do wartości ograniczenia twardego.
              Jeśli nie podano ani -H ani -S, to ustawiane jest zarówno ograniczenie miękkie  jak
              i  twarde.  Ograniczenie limit może być liczbą w jednostkach określonych dla zasobu
              lub  jedną  ze  specjalnych  wartości:  hard,  soft  lub  unlimited,  oznaczających
              odpowiednio:  bieżące  twarde  ograniczenie, bieżące miękkie ograniczenie oraz brak
              ograniczenia.  Jeżeli pominięto limit, wypisywana jest bieżąca wartość ograniczenia
              miękkiego  danego  zasobu,  chyba  że  podano opcję -H. Gdy podano więcej niż jedno
              określenie zasobu, przed wartością wypisywana jest nazwa ograniczenia  i  jednostka
              miary.  Inne opcje interpretowane są następująco:
              -a     Podawane są wszystkie bieżące ograniczenia
              -b     Maksymalny rozmiar bufora gniazda
              -c     Maksymalny rozmiar tworzonych plików core
              -d     Maksymalny rozmiar segmentu danych procesu
              -e     Maksymalny priorytet planisty ("nice")
              -f     Maksymalny rozmiar plików zapisywanych przez powłokę i jej potomków
              -i     Maksymalna liczba oczekujących sygnałów
              -k     Maksymalna liczba kqueue które można przypisać
              -l     Maksymalny rozmiar, jaki może zostać zablokowany w pamięci
              -m     Maksymalny  rozmiar  części rezydentnej (wiele systemów nie przestrzega tego
                     limitu)
              -n     Maksymalna liczba  otwartych  deskryptorów  pliku  (większość  systemów  nie
                     pozwala na ustawianie tej wartości)
              -p     Rozmiar potoku w blokach 512-bajtowych (może nie być ustawione)
              -q     Maksymalny rozmiar kolejek komunikatów POSIX, w bajtach
              -r     Maksymalny priorytet rzeczywisty planisty
              -s     Maksymalny rozmiar stosu
              -t     Maksymalny czas CPU w sekundach
              -u     Maksymalna liczba procesów dostępnych dla pojedynczego użytkownika
              -v     Maksymalna  wielkość pamięci wirtualnej dostępna dla powłoki i, w niektórych
                     systemach, dla jej potomków.
              -x     Maksymalna liczba plików blokad
              -P     Maksymalna liczba pseudoterminali
              -T     Maksymalna liczba wątków

              Jeżeli podano limit i nie użyto  opcji  -a,  to  limit  staje  się  nową  wartością
              ograniczenia  zadanego zasobu. Jeżeli nie podano żadnej opcji, to zakłada się opcję
              -f. Wartości podawane są przyrostowo co 1024-bajty, z wyjątkiem  -t,  podawanego  w
              sekundach,  -p,  w jednostkach 512-bajtowych bloków, -P, -T, -b, -k, -n i -u, które
              są wartościami bez miana; oraz w trybie Posix, -c i -f,  podawanych  w  przyrostach
              512-bajtowych.Zwracanym  kodem  jest  0,  chyba  że  podano nieprawidłową opcję lub
              argument albo podczas ustawiania nowego ograniczenia wystąpił błąd.

       umask [-p] [-S] [tryb]
              Maska praw dostępu dla plików tworzonych przez użytkownika ustawiana jest na  tryb.
              Jeżeli  tryb  rozpoczyna  się od cyfry, jest interpretowany jako liczba ósemkowa; w
              przeciwnym razie interpretowany jest jako maska w trybie symbolicznym, podobnie jak
              akceptowane przez chmod(1).  Jeżeli pominięto tryb wypisywana jest aktualna wartość
              maski.  Opcja -S powoduje, że  maska  zostanie  wypisana  w  postaci  symbolicznej;
              domyślne  wyjście  jest  w  postaci  liczby  ósemkowej.   Jeżeli  podano opcję -p i
              pominięto tryb, to wyjście ma postać, która może być  powtórnie  wykorzystana  jako
              wejście.   Kodem  zwracanym  jest  0  jeśli pomyślnie zmieniono tryb lub nie podano
              argumentu tryb, zaś fałsz w pozostałych sytuacjach.

       unalias [-a] [nazwa ...]
              Usuwa każdą z nazw z listy zdefiniowanych aliasów. Jeżeli podano -a, to usuwane  są
              definicje  wszystkich  aliasów.  Zwracanym kodem jest prawda, chyba że podana nazwa
              nie jest zdefiniowanym aliasem.

       unset [-fv] [-n] [nazwa ...]
              Dla każdej nazwy, usuwa odpowiadającą jej wartość lub funkcję. Jeżeli podano  opcję
              -v,  to każda z nazw odnosi się do zmiennej powłoki. Zmienne read-only nie mogą być
              kasowane. Jeżeli podano -f,  to  każda  z  nazw  wskazuje  na  funkcję  powłoki,  a
              definicja  funkcji  jest  usuwana.  Jeśli  podano  opcję -n, a nazwa jest zmienną z
              parametrem  nazwa  referencyjna,  to  zostanie  usunięta  nazwa  zamiast   zmiennej
              referencyjnej.  -n nie daje efektu, jeśli podano opcję -f. Jeśli nie podano żadnych
              opcji, każda z nazw odnosi się do zmiennej; jeśli nie ma zmiennej o tej nazwie,  to
              usunięte  zostaną  funkcje  z  tą nazwą.  Każda  z usuniętych zmiennych lub funkcji
              usuwana jest ze  środowiska  przesyłanego  następnym  poleceniom.   Jeśli  usunięta
              zostanie  któraś  ze  zmiennych  COMP_WORDBREAKS, RANDOM, SECONDS, LINENO, HISTCMD,
              FUNCNAME, GROUPS, lub DIRSTACK, to traci ona swe specjalne właściwości, nawet jeśli
              zostanie  następnie  ponownie  ustawiona.  Kodem  zakończenia jest prawda, chyba że
              nazwa nie istnieje lub jest readonly.

       wait [-n] [n ...]
              Czeka na każdy podany proces potomny i zwraca jego kod  zakończenia.   n  może  być
              identyfikatorem  procesu  lub określeniem zadania; jeśli podano określenie zadania,
              to nastąpi oczekiwanie na wszystkie procesy w  potoku  tego  zadania.   Jeżeli  nie
              podano  n,  następuje  oczekiwanie na wszystkie aktualnie aktywne procesy potomne i
              zwracany jest kod zerowy. Jeśli podano opcję  -n,  to  wait  czeka  na  zakończenie
              każdego zadania i zwraca jego kod zakończenia. Jeśli n określa nieistniejący proces
              lub zadanie, to zwracany jest kod 127.  W pozostałych przypadkach zwracany jest kod
              zakończenia ostatniego procesu lub zadania na jakie czekano.

POWŁOKA OKROJONA

       Jeśli  bash  uruchomiony jest pod nazwą rbash, lub przy jego wywołaniu posłużono się opcją
       -r, to staje się powłoką okrojoną (restricted).   Powłoka  okrojona  służy  do  ustawienia
       środowiska  lepiej  kontrolowanego  niż powłoka standardowa. Zachowuje się ona identycznie
       jak bash z wyjątkiem tego, że poniższe nie są dozwolone lub nie są wykonywane:

       ·      zmiana katalogów przy pomocy cd

       ·      ustawianie lub kasowanie wartości SHELL, PATH, ENV lub BASH_ENV

       ·      podawanie nazw poleceń zawierających /

       ·      podawanie nazw plików  zawierających  /  jako  argumentu  wbudowanego  polecenia  .
              (kropka).

       ·      podawanie  nazwy  pliku  zawierającej ukośnik jako argument do opcji -p wbudowanego
              polecenia hash.

       ·      importowanie definicji funkcji ze środowiska powłoki przy uruchamianiu

       ·      analiza wartości SHELLOPTS ze środowiska powłoki przy uruchamianiu

       ·      przekierowywanie wyjścia przy pomocy operatorów >, >|, <>, >&, &> i >>

       ·      posługiwanie się wbudowanym  poleceniem  exec  w  celu  zastąpienia  powłoki  innym
              poleceniem

       ·      dodawanie  lub  usuwanie  poleceń  przy  pomocy opcji -f i -d wbudowanego polecenia
              enable

       ·      używanie wbudowanego polecenia enable do włączania wyłączonych wbudowanych  poleceń
              powłoki

       ·      podawanie opcji -p wbudowanego polecenia command

       ·      wyłączanie trybu okrojonego za pomocą set +r lub set +o restricted.

       Powyższe ograniczenia wymuszane są po przeczytaniu plików uruchomieniowych.

       Jeśli wykonywane polecenie okaże się skryptem powłoki (patrz WYKONYWANIE POLECEŃ powyżej),
       to rbash wyłącza wszelkie ograniczenia w powłoce zrodzonej do wykonania skryptu.

ZOBACZ TAKŻE

       Bash Features, Brian Fox i Chet Ramey
       The Gnu Readline Library, Brian Fox i Chet Ramey
       The Gnu History Library, Brian Fox i Chet Ramey
       Portable Operating System Interface (POSIX) Part 2: Shell and Utilities, IEEE --
              http://pubs.opengroup.org/onlinepubs/9699919799/
       http://tiswww.case.edu/~chet/bash/POSIX -- opis trybu posix
       sh(1), ksh(1), csh(1)
       emacs(1), vi(1)
       readline(3)

PLIKI

       /bin/bash
              Plik wykonywalny powłoki bash
       /etc/profile
              Ogólnosystemowy plik inicjujący, wykonywany dla powłok zgłoszeniowych
       /etc/bash.bashrc
              Ogólnosystemowy plik startowy dla powłoki interaktywnej
       /etc/bash.bash.logout
              Ogólnosystemowy plik porządkujący dla  powłoki  zgłoszeniowej,  wykonywany  podczas
              kończenia przez nią pracy
       ~/.bash_profile
              Osobisty plik inicjujący, wykonywany dla powłok zgłoszeniowych
       ~/.bashrc
              Indywidualny plik startowy dla powłoki trybu interaktywnego
       ~/.bash_logout
              Indywidualny  plik  porządkujący  dla  powłoki  zgłoszeniowej,  wykonywany  podczas
              kończenia przez nią pracy
       ~/.inputrc
              Indywidualny plik inicjujący do readline

AUTORZY

       Brian Fox, Free Software Foundation
       bfox@gnu.org

       Chet Ramey, Case Western Reserve University
       chet.ramey@case.edu

ZGŁOSZENIA BŁĘDÓW

       Jeśli znajdziesz w bash błąd, powinieneś go zgłosić. Ale najpierw powinieneś upewnić  się,
       że  rzeczywiście  jest to błąd i że pojawia się w najświeższej wersji bash jaką masz. Jest
       ona zawsze dostępna pod adresem ftp://ftp.gnu.org/pub/gnu/bash/.

       Po ustaleniu, że błąd faktycznie istnieje, użyj polecenia bashbug do  wysłania  zgłoszenia
       błędu.   Jeśli  masz  poprawkę  usuwającą  problem,  zachęcamy  do przesłania jej również!
       Sugestie i `filozoficzne' zgłoszenia błędów mogą być przesyłane [w języku  angielskim]  do
       bug-bash@gnu.org lub wysyłane na grupę dyskusyjną gnu.bash.bug.

       WSZYSTKIE zgłoszenia błędów powinny zawierać:

       Numer wersji bash
       Sprzęt i system operacyjny
       Użyty kompilator
       Opis błędnego zachowania
       Krótki skrypt lub przepis na uzyskanie błędu

       bashbug  wstawia  pierwsze  trzy  pozycje automatycznie do szablonu jaki udostępnia w celu
       wypełnienia zgłoszenia błędów.

       Komentarze i zgłoszenia błędów dotyczące tej strony podręcznika  [oryginału]  powinny  być
       kierowane na adres chet.ramey@case.edu.

BŁĘDY

       Jest za duży i zbyt wolny.

       Istnieje  trochę  subtelnych  różnic  pomiędzy  bash a tradycyjnymi wersjami sh, głównie z
       powodu specyfikacji POSIX.

       Aliasy w niektórych zastosowaniach wprawiają w zakłopotanie.

       Poleceń wbudowanych powłoki i funkcji nie można zatrzymywać/wznawiać.

       Polecenia złożone i sekwencje poleceń postaci `a ; b ; c' nie są  obsługiwane  przychylnie
       przy  próbie wstrzymania procesu. Gdy proces jest zatrzymany, powłoka natychmiast wykonuje
       następne polecenie sekwencji.  Wystarcza umieszczanie sekwencji poleceń wewnątrz  nawiasów
       by wymusić wykonanie ich przez podpowłokę, która może być zatrzymana jako całość.

       Zmienne tablicowe nie mogą być (na razie) eksportowane.

       Może istnieć tylko jeden aktywny koproces w danym czasie.

TŁUMACZENIE

       Autorami  polskiego tłumaczenia niniejszej strony podręcznika man są: Wojtek Kotwica (PTM)
       <wkotwica@post.pl> i Michał Kułach <michal.kulach@gmail.com>.

       Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów  na
       stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją  4.4 oryginału.