Zmienne powłoki bash

Transkrypt

Zmienne powłoki bash
Zmienne powłoki bash
PPID
Identyfikator procesu macierzystego powłoki. Zmienna ta jest tylko
do odczytu.
PWD
Bieżący katalog roboczy, ustawiony poleceniem cd.
OLDPWD
Poprzedni katalog roboczy ustawiony poleceniem cd.
REPLY
Ustawiona na wiersz wejścia odczytany wbudowanym poleceniem read
jeśli nie podano żadnych jego argumentów.
UID
Interpretowane jako identyfikator bieżącego użytkownika, inicjowane
przy uruchamianiu powłoki. Zmienna ta jest tylko do odczytu.
EUID
Interpretowane jako efektywny identyfikator bieżącego użytkownika,
inicjowane przy uruchamianiu powłoki. Zmienna ta jest tylko do odczytu.
GROUPS
Zmienna tablicowa zawierająca listę grup, których członkiem jest bieżący użytkownik. Próby przypisywania jej wartości nie odnoszą efektu
i są milcząco odrzucane. Jeżeli GROUPS jest unieważnione, to traci swe
specjalne właściwości, nawet jeżeli jest następnie ponownie ustawione.
BASH
Interpretowane jako pełna nazwa pliku użyta do wywołania tego przebiegu bash .
BASH VERSION
Interpretowane jako łańcuch opisujący wersję uruchomionego bash.
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.
SHL
Inkrementowana każdorazowo, gdy uruchamiane jest kolejne wystąpienie bash.
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
...
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 równa liczbie sekund od czasu przypisania plus przypisana
wartość. Jeżeli SECONDS jest unieważnione
...
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
...
HISTCMD
Licznik historii (indeks na liście historii poleceń) bieżącego polecenia.
Jeżeli HISTCMD jest unieważnione,
FUNCNAME
Nazwa aktualnie wykonywanej funkcji powłoki. Zmienna ta istnieje
tylko podczas wykonywania funkcji powłoki. Próby przypisywania jej
wartości nie odnoszą efektu i są milcząco odrzucane. Jeżeli FUNCNAME
jest unieważnione,
...
...
DIRSTACK
Zmienna tablicowa 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 zmienej 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
...
PIPESTATUS
Zmienna tablicowa zwierająca listę kodów zakończenia z procesów w
ostatnio wykonywanym potoku pierwszoplanowym (który może zawierać pojedyncze polecenie).
OPTARG
Wartość ostatniego, będącego opcją, argumentu przetworzonego przez
wbudowane polecenie getopts.
OPTIND
Numer (indeks) następnego argumentu, jaki ma zostać przetworzony
przez wbudowane polecenie getopts.
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.
OSTYPE
Automatycznie ustawiane na łańcuch opisujący system operacyjny, w
którym jest wykonywany bash. Wartość domyślna zależy od systemu.
MACHTYPE
Automatycznie ustawiane na łańcuch w pełni opisujący typ systemu,
na którym jest wykonywany bash, w standadowym formacie
GNU cpu-company-system. Wartość domyślna zależy od systemu.
SHELLOPTS
Lista, rozdzielonych dwukropkami, włączonych opcji powłoki. Każde
słowo listy jest poprawnym argumentem opcji -o wbudowanego polecenia set. 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.
COMP WORDS
Zmienna tablicowa składająca się z pojedynczych słów z aktualnego
wiersza poleceń. Zmienna ta jest dostępna wyłącznie w funkcjach powłoki wywołanych przez usługi programowalnego uzupełniania.
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.
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.
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.
IFS
Wewnętrzny Separator Pól (Internal Field Separator) używany do podziału na słowa po interpretacjach i dzielenia wierszy na słowa we
wbudowanym poleceniu read.
PATH
Ścieżka wyszukiwania poleceń. jest to lista rozdzielanych dwukropkami katalogów, w których powłoka szuka poleceń.
HOME
Katalog domowy bieżącego użytkownika; domyślny argument wbudowanego polecenia cp. Wartość tej zmiennej wykorzystywana jest też
przy wykonywaniu interpretacji tyld.
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.
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.
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.
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, 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 zapewnia tej zmiennej wartość domyślną, ale położenie plików
pocztowych użytkownika, jakim się posługuje zależy od systemu (e.g.,
/var/mail/$USER).
PS1
Wartość tego parametru jest interpretowana 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 drukowana
przed każdym poleceniem wyświetlanym przez bash podczas śledzenia wykonywania. Pierwszy znak PS4, w razie potrzeby, powtarzany
jest wielokrotnie, by wskazać wiele pozionów zagnieżdżenia. Domyślnie jest to "+".
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.
...
HISTSIZE
Liczba poleceń do zapamiętania w historii poleceń. Wartością domyślną jest 500.
HISTFILE
Nazwa pliku, w którym zachowywana jest historia poleceń. 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 interaktywnej.
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. Domyślną wartością jest 500. Plik historii jest także obcinany do tego rozmiaru po
zapisaniu go w czasie kończenia pracy przez powłokę interaktywną.
OPTERR
Jeżeli ustawiono na wartość 1, bash wyświetla komunikaty o błędach
generowanych przez wbudowane polecenie getopts. OPTERR inicjowane
jest na 1 każdorazowo, gdy wywoływana jest powłoka lub wykonywany
jest skrypt powłoki.
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.
PROMPT COMMAND
Jeżeli jest ustawiona, to jej wartość jest wykonywana jwko polecenie
przed każdym wysłaniem zachęty głównej.
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.
TMOUT
Jeśli ustawione na wartość większą od zera, to wartość ta jest interpretowana jako liczba sekund określającą czas, przez jaki powłoka ma
czekać na wprowadzenie danych po wyświetleniu zachęty. Bash kończy
pracę po odczekaniu tego czasu jeśli dane nie pojawiły się.
FCEDIT
Domyślny edytor dla wbudowanego polecenia fc.
FIGNORE
Lista rozdzielonych dwukropkami przyrostków, jakie mają być ignorowane podczas uzupełniania nazw plików . 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:~".
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.
INPUTRC
nazwa pliku startowego dla readline, unieważniająca domyślną ~/.inputrc .
HISTCONTROL
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.
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.
Funkcja tej zmiennej jest zastąpiona przez HISTIGNORE. Drugi i kolejne wiersze złożonego polecenia wielowierszowego nie są sprawdzane
i są dodawane do historii bez względu na wartość
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.
histchars
Dwa lub trzy znaki sterujące interpretacją historii i podziałem na
leksemy (zobacz poniżej INTERPRETACJA HISTORII). Pierwszy znak
jest znakiem interpretacjihistorii, 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.
HOSTFILE
Zawiera nazwę pliku o tym samym formacie co /etc/hosts który
pownien 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.
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 %?. Jeśli ustawiono inną wartość, to podany łańcuch
musi być przedrostkiem nazwy zatrzymanego zadania; zapewnia to
funkcjonalność analogiczną do identyfikatora zadania %.
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).

Podobne dokumenty