Příkaz Linux Bash jesh-kompatibilní interpret příkazového jazyka, který provádí příkazy čtené ze standardního vstupu nebo ze souboru.Bash také obsahuje užitečné funkce z Korn a C shellů (ksh acsh).
Bash Options
Kromě jednoznačných možností shellu dokumentovaných v popisusoubor vestavěný příkaz,bash interpretuje při vyvolání následující možnosti:
- -C řetězec: Pokud-C existuje možnost, pak se přečte příkazy řetězec . Pokud existují argumenty po řetězec , jsou přiřazeny k pozičním parametrům, počínaje hodnotou$0.
- -i: Pokud-i existuje možnost, je shell interaktivní .
- -l: Udělatbash se chová jako přihlašovací shell.
- -r: Pokud-r je přítomen, shell se stává omezený.
- -s: Pokud-s existuje možnost nebo pokud po zpracování opce nezůstávají žádné argumenty, pak se příkazy přečtou ze standardního vstupu. Tato volba umožňuje nastavit polohové parametry při vyvolání interaktivního shellu.
- -D: Seznam všech dvojitých uvozovek, jimž předchází$ je vytištěn na standardním výstupu. Jedná se o řetězce, které podléhají jazykovému překladu, pokud aktuální lokalizace neníC neboPOSIX. To znamená,n volba; žádné příkazy nebudou spuštěny.
- - + O shopt_option : shopt_option je jednou z možností shellu přijatýchshopt vestavěný. Li shopt_option je přítomen,-Ó nastavuje hodnotu této možnosti a+ O vymaže to. Li shopt_option není přiložena, názvy a hodnoty možností shellu akceptoványshopt jsou vytištěny na standardním výstupu. Je-li volba vyvolání + O, výstup je zobrazen ve formátu, který může být použit jako vstup.
- --: A-- signalizuje ukončení možností a zakáže další zpracování volby. Jakékoli argumenty po-- jsou považovány za názvy souborů a argumenty. Argument z- je ekvivalentní--.
Bash také interpretuje řadu možností s více znaky. Tyto volby se musí zobrazit na příkazovém řádku před jednoznačnými volbami, které je třeba rozpoznat:
- - dump-po-strings: Ekvivalentní-D, ale výstup je v GNU gettext po (přenosný objekt).
- --dump-strings: Ekvivalentní-D.
- --Pomoc: Zobrazí zprávu o použití na standardním výstupu a úspěšně se ukončí.
- --init-soubor: soubor a --rcfile soubor : Spuštění příkazů z soubor namísto standardního osobního inicializačního souboru ~ / .bashrc pokud je shell interaktivní.
- --přihlásit se: Ekvivalentní-l.
- --noedit: Nepoužívejte GNUreadline Knihovna čte příkazové řádky, když je shell interaktivní.
- - noprofile: Nečtěte systémový spouštěcí soubor / etc / profil nebo některý z osobních inicializačních souborů ~ / .bash_profile , ~ / .bash_login , nebo ~ / .profile . Ve výchozím stavu,bash čte tyto soubory při vyvolání jako přihlašovací shell.
- - ne: Nečíst a nespouštět osobní inicializační soubor ~ / .bashrc pokud je shell interaktivní. Tato volba je ve výchozím nastavení zapnuta, pokud je shell vyvolán jakosh.
- --posix: Změňte chováníbash kde výchozí operace se liší od standardu POSIX tak, aby odpovídala standardu ( posix režim ).
- --omezený: Obal se stává omezen.
- --rpm - vyžaduje: Vytvořte seznam souborů, které jsou nutné pro spuštění skriptu prostředí. To znamená '-n' a podléhá stejným omezením jako kontrolní kontrola chyby při kompilaci; Základy, testy a evals nejsou analyzovány, takže některé závislosti mohou být vynechány.
- --verbose: Ekvivalentní-proti.
- --verze: Zobrazit informace o verzi pro tuto instancibash na standardním výstupu a úspěšně ukončit.
Argumenty
Pokud zůstanou argumenty po zpracování volby a ani-C ani-s , byl první argument považován za název souboru obsahující příkazy shellu. Li bash je vyvolána tímto způsobem,$0 je nastaven na název souboru a polohové parametry jsou nastaveny na zbývající argumenty.Bash čte a provádí příkazy z tohoto souboru; pak opustí.BashStav ukončení je stav ukončení posledního příkazu provedeného ve skriptu. Pokud nejsou spuštěny žádné příkazy, stav ukončení je 0. Je nejdříve proveden pokus o otevření souboru v aktuálním adresáři a pokud není nalezen žádný soubor, pak shell vyhledá adresáře vCESTA pro skript.
Vyvolání
A přihlašovací shell je takový, jehož první znak argumentu nula je a-, nebo jeden začal s--přihlásit se volba.
An interaktivní shell je jeden začal bez argumentů bez možnosti a bez-C , jejichž standardní vstup a výstup jsou oba připojeny ke svorkám podle určení isatty (3), nebo jeden začal s-i volba.PS1 je nastaven a $- zahrnuje, pokud je bash interaktivní, což umožňuje skript prostředí nebo spouštěcí soubor otestovat tento stav.
Následující odstavce popisují, jakým způsobembash spustí spouštěcí soubory. Pokud některý ze souborů existuje, ale nelze je číst,bash hlásí chybu. Tildy jsou rozšiřovány v názvech souborů, jak je popsáno v Tilde Expansion.
Kdyžbash je vyvolána jako interaktivní přihlašovací shell nebo jako neinteraktivní shell s--přihlásit se volba nejprve přečte a provede příkazy ze souboru / etc / profil , pokud existuje soubor. Po přečtení tohoto souboru to hledá ~ / .bash_profile , ~ / .bash_login , a ~ / .profile , v tomto pořadí a čte a provede příkazy z prvního, který existuje a je čitelný. The- noprofile možnost může být použita, když shell začal potlačit toto chování.
Při ukončení přihlašovacího shellu,bash čte a provádí příkazy ze souboru ~ / .bash_logout , pokud existuje.
Pokud je spuštěn interaktivní shell, který není přihlašovací shell,bash čte a provádí příkazy z ~ / .bashrc , pokud existuje soubor. To může být potlačeno použitím- ne volba. The--rcfile soubor možnost vynutitbash číst a provádět příkazy z soubor namísto ~ / .bashrc .
Kdyžbash je spuštěn neinteraktivně - například spustit skript shellu - hledá proměnnouBASH_ENV v prostředí, rozšiřuje jeho hodnotu, pokud se tam zobrazuje, a používá rozšířenou hodnotu jako název souboru pro čtení a spuštění.Bash chová se, jako kdyby byl proveden následující příkaz:
pokud -n "$ BASH_ENV"; pak . "$ BASH_ENV"; fi
ale hodnotaCESTA proměnná se nepoužívá k vyhledání názvu souboru. Libash je vyvolán s názvemsh, snaží se napodobit spouštěcí chování historických verzísh co nejtěsněji, a to i při dodržení standardu POSIX. Při vyvolání jako interaktivní přihlašovací shell nebo neinteraktivní shell s--přihlásit se , nejprve se pokusí číst a provádět příkazy z / etc / profil a ~ / .profile , v tomto pořadí. The- noprofile možnost zabránit tomuto chování. Při vyvolání jako interaktivní shell s názvem sh, bash hledá proměnnouENV, rozšiřuje svou hodnotu, pokud je definována, a používá rozšířenou hodnotu jako název souboru pro čtení a spuštění. Protože shell byl vyvolán jakosh se nepokouší číst a provádět příkazy z jiných spouštěcích souborů, např--rcfile nemá žádný vliv. Neinteraktivní shell vyvolaný jménemsh nepokouší se číst žádné další spouštěcí soubory. Při vyvolání jakosh, bash vstupuje posix po přečtení spouštěcích souborů. Kdyžbash je spuštěn posix jako u--posix volba příkazového řádku, odpovídá standardu POSIX pro spouštěcí soubory. V tomto režimu rozšiřují interaktivní shellENV proměnná a příkazy jsou přečteny a spuštěny ze souboru, jehož jméno je rozšířená hodnota. Žádné další spouštěcí soubory nejsou čteny. Bash se pokouší zjistit, kdy je spuštěn démonem vzdáleného shellu, obvykle rshd . Li bash určuje, že je spuštěn rshd , čte a provádí příkazy z ~ / .bashrc , pokud tento soubor existuje a je čitelný. Nebude to dělat, pokud je vyvoláno jakosh. The- ne možnost zablokovat toto chování a--rcfile volba může být použita k přinutit jiný soubor k čtení, ale rshd obecně nevyvolává shell s těmito možnostmi nebo jim neumožňuje zadání. Pokud je shell spuštěn s faktickým uživatelem (skupinou) id se nerovná skutečnému uživateli (skupině) id a-p volba není přiložena, nejsou spuštěny žádné spouštěcí soubory, funkce shell nejsou zděděny z prostředí,SHELLOPTS proměnná, pokud se objeví v prostředí, je ignorována a efektivní ID uživatele je nastaveno na skutečné ID uživatele. Pokud-p volba je dodána při vyvolání, chování při spuštění je stejné, ale efektivní ID uživatele není resetováno. Následující definice se používají po celý zbytek tohoto dokumentu: Vyhrazená slova jsou slova, která mají zvláštní význam pro shell. Následující slova jsou rozpoznána jako vyhrazená, pokud nejsou kótovaná, a buď první slovo jednoduchého příkazu nebo třetí slovo apřípadnebopro příkaz: ! case do proveďte elif else esac fi pro funkci jestliže ve výběru pak do dokud {} time A jednoduchý příkaz je posloupnost volitelných proměnných přiřazeníprázdný- oddělil slova a přesměrování a ukončil a řídícího operátora . První slovo určuje příkaz, který má být proveden, a předává se jako argument nula. Zbývající slova jsou předána jako argumenty pro vyvolaný příkaz. Návratová hodnota a jednoduchý příkaz je jeho výstupní status, nebo 128 + n pokud je příkaz ukončen signálem n . A potrubí je sekvence jednoho nebo více příkazů oddělených znakem|. Formát potrubí je čas -p ! příkaz | command2 … . Standardní výstup příkaz je připojen pomocí potrubí na standardní vstup command2 . Toto připojení se provádí před jakýmkoli přesměrováním určeným příkazem. Pokud rezervované slovo! předchází potrubí, výstupní stav tohoto potrubí je logickým NOT stavu výstupu posledního příkazu. V opačném případě je stav potrubí stav výstupu posledního příkazu. Shell čeká na to, aby všechny příkazy v potrubí skončily před návratem hodnoty. Pokudčas vyhrazené slovo předchází potrubí, uplynulo uplynulé, stejně jako uživatelský a systémový čas spotřebovaný jeho provedením, když se potrubí ukončí. The-p volba změní výstupní formát na formát specifikovaný serverem POSIX. TheČASOVÝ FORMÁT proměnná může být nastavena na formátovací řetězec, který určuje, jak mají být informace o časování zobrazeny. Každý příkaz v potrubí je spuštěn jako samostatný proces (například v subshell). A seznam je sekvence jednoho nebo více potrubí oddělených jedním z operátorů;, &, &&, nebo||, a volitelně ukončen jedním z nich;, &, nebo Z těchto provozovatelů seznamu,&& a|| mají stejnou přednost, následuje; a&, které mají stejnou přednost. Sekvence jednoho nebo více řádků se může objevit v a seznam namísto středníkem pro vymezení příkazů. Pokud příkaz ukončí operátor&, shell provede příkaz ve složce Pozadí v podsvuku. Shell nečeká, až příkaz skončí a stav návratu je 0. Příkazy oddělené a; jsou prováděny postupně; skořápka čeká, aby se každý příkaz ukončil. Stav návratu je stav ukončení posledního příkazu. Řídící pracovníci&& a|| označte seznamy A a seznamy OR, resp. Seznam AND obsahuje formulář command1 && command2 command2 je provedena, pokud a pouze tehdy, command1 vrátí stav ukončení nula. Seznam OR obsahuje formulář command1 || command2 command2 se provádí pouze a pouze command1 vrátí stav nenulového výstupu. Stav návratů seznamů AND a OR je stav ukončení posledního příkazu provedeného v seznamu. A složený příkaz je jedna z následujících: (seznam) : seznam se provádí v podsvuku. Variabilní přiřazení a vestavěné příkazy, které ovlivňují prostředí shellu, nezůstávají v platnosti po dokončení příkazu. Stav návratu je stav ukončení seznam . {list; }} : seznam je jednoduše proveden v aktuálním shellu prostředí. seznam musí být ukončena novou čárou nebo středníkem. Toto je známé jako a skupinový příkaz . Stav návratu je stav ukončení seznam . Všimněte si, že na rozdíl od metacharacterů( a), { a} jsou vyhrazená slova a musí se vyskytnout tam, kde je dovoleno rozpoznat vyhrazené slovo. Vzhledem k tomu, že nespouštějí slovo, musí být odděleni seznam podle mezery. ((výraz)) : The výraz se vyhodnocuje podle pravidel popsaných v části Aritmetické hodnocení. Pokud je hodnota výrazu nenulová, stav návratu je 0; jinak je stav návratu 1. To je přesně stejné jakonechat ' výraz '. výraz : V závislosti na vyhodnocení podmíněného výrazu vraťte stav 0 nebo 1 výraz . Výrazy jsou složeny z primárních prvků popsaných níže v části Podmíněné výrazy. Rozpoznávání slov a rozšíření názvů cest se neprovádí na slova mezi znaky a; rozšíření tilde, parametr a variabilní expanze, aritmetická expanze, náhrada příkazu, nahrazení procesu a odebrání citátu. Když== a!= operátoři, řetězec napravo od operátora se považuje za vzor a odpovídá podle pravidel popsaných v částiOdpovídání vzorů. Hodnota návratu je 0, pokud řetězec odpovídá nebo nesouhlasí se vzorem a 1 jinak. Každá část vzoru může být citována tak, aby byla přiměřená jako řetězec. Výrazy lze kombinovat pomocí následujících operátorů, jejichž seznam je uveden v sestupném pořadí: The&& a|| provozovatelé nehodnotí výraz2 pokud hodnota výraz1 stačí k určení návratové hodnoty celého podmíněného výrazu. V neinteraktivním shellu nebo interaktivním shellu, ve kterém je interactive_comments možnost nashopt vestavěný je povolen, slovo začínající# způsobí ignorování tohoto slova a všech zbývajících znaků na tomto řádku. Interaktivní shell bezinteractive_comments povolena možnost nepovoluje komentáře. The interactive_comments je ve výchozím nastavení zapnuto v interaktivních shellů. Citace se používá k odstranění zvláštního významu některých znaků nebo slov do shellu. Citace lze použít k vypnutí speciálního zpracování zvláštních znaků, k zabránění rozpoznání vyhrazených slov jako takových a k zabránění rozšíření parametrů. Každý z metacharaktery uvedené výše v částiDefinice má zvláštní význam shell a musí být citován, pokud se má reprezentovat. Když se používají zařízení pro rozšiřování historie příkazů, rozšíření historie charakter, obvykle!, musí být citováno, aby se zabránilo rozšíření historie. Existují tři mechanismy citování: escape character , jednoduché uvozovky a dvojité uvozovky. Nekotované zpětné lomítko () je escape character . Zachovává se doslovná hodnota následujícího znaku s výjimkou Uložení znaků v jednoduchých uvozovkách zachovává literární hodnotu každého znaku v uvozovkách. Jedna citace nemusí nastat mezi jednotlivými uvozovkami, a to i v případě, že předchází zpětné lomítko. Uložení znaků v dvojitých uvozovkách zachovává doslovnou hodnotu všech znaků v uvozovkách, s výjimkou$, ', a. Postavy$ a' zachovat jejich zvláštní význam v rámci dvojitých uvozovek. Zpětné lomítko si zachovává svůj zvláštní význam pouze tehdy, když následuje jeden z následujících znaků:$, ', ', , nebo Zvláštní parametry* a@ mají zvláštní význam, pokud jsou v uvozovkách. Slova formuláře$' řetězec "se zachází speciálně. Slovo se rozšiřuje na řetězec , přičemž znaky, které unikly zpětným lomem, byly nahrazeny podle normy ANSI C. Sekvence únikového lomítka, pokud jsou přítomny, jsou dekódovány následovně: Rozšířený výsledek je jednočinný, jako by nebyl přítomen dolarový znak. Dvojitý řetězec, jehož znakem je dolar ($) způsobí překlad řetězce podle aktuálního národního prostředí. Je-li aktuální localeC neboPOSIX, dolarová značka je ignorována. Je-li řetězec přeložen a nahrazen, nahrazení je dvakrát citováno. A parametr je jednotka, která ukládá hodnoty. Může to být a název , číslo nebo jeden ze zvláštních znaků uvedených v částiZvláštní parametry. Pro účely shellu, a proměnná je parametr označený a název . Proměnná má a hodnota a nula nebo více atributy . Atributy jsou přiřazeny pomocíprohlásit vestavěný příkaz. Pokud je přiřazena hodnota, je nastaven parametr. Nulový řetězec je platná hodnota. Jakmile je nastavena proměnná, může být deaktivována pouze pomocíunset vestavěný příkaz. A proměnná může být přiděleno prohlášením formuláře: název = hodnota Li hodnota není zadána, proměnná je přiřazena nulovému řetězci. Všechno hodnoty podstoupí expanzi tilde, parametr a variabilní expanzi, náhradu příkazu, aritmetickou expanzi a odebrání citátu. Má-li proměnnácelé číslo atribut set, pak hodnota podléhá aritmetické expanzi, i když není použito rozšíření $ ((…)). Rozdělení slov se neprovádí, s výjimkou'$@' jak je vysvětleno v částiZvláštní parametry. Rozšíření cesty není provedeno. Příkazy přiřazení se mohou také zobrazovat jako argumenty proprohlásit, sázejte, vývozní, pouze ke čtení, a místní vestavěné příkazy. A polohový parametr je parametr označený jednou nebo více číslicemi, s výjimkou jednoho číslice 0. Pozicionální parametry jsou při vyvolání argumentů shellu přiřazeny a mohou být znovu přiřazeny pomocísoubor vestavěný příkaz. Polohové parametry nesmí být přiřazeny příkazům přiřazení. Pozicionální parametry jsou dočasně nahrazeny, když je provedena funkce shellu. Pokud se rozšiřuje polohový parametr, který se skládá z více než jedné číslice, musí být přiložen do závor. Skořepina zvlášť zpracovává několik parametrů. Tyto parametry lze odkazovat pouze; jejich přidělení není povoleno. Následující proměnné jsou nastaveny pomocí shellu: BASH: Rozbalí se na úplný název souboru použitý pro vyvolání této instancebash. BASH_VERSINFO: Čtecí proměnná pole, jejíž členové obsahují informace o verzi pro tuto instanci bash. Hodnoty přiřazené členům pole jsou následující: BASH_VERSION: Rozbalí se na řetězec popisující verzi této instancebash. COMP_CWORD: Index do$ {COMP_WORDS} slova obsahující aktuální pozici kurzoru. Tato proměnná je dostupná pouze ve funkcích shellu vyvolaných programovatelnými zařízeními pro dokončení. COMP_LINE: Aktuální příkazový řádek. Tato proměnná je dostupná pouze ve funkcích shell a externích příkazech vyvolaných programovatelnými zařízeními pro dokončení. COMP_POINT: Index aktuální pozice kurzoru vzhledem k počátku aktuálního příkazu. Pokud je aktuální pozice kurzoru na konci aktuálního příkazu, hodnota této proměnné se rovná$ {# COMP_LINE}. Tato proměnná je dostupná pouze ve funkcích shell a externích příkazech vyvolaných programovatelnými zařízeními pro dokončení. COMP_WORDS: Proměnná pole sestávající z jednotlivých slov v aktuálním příkazovém řádku. Tato proměnná je dostupná pouze ve funkcích shellu vyvolaných programovatelnými zařízeními pro dokončení. DIRSTACK: Proměnná pole obsahující aktuální obsah zásobníku adresářů. Adresáře se zobrazí v zásobníku v pořadí, v jakém jsou zobrazenydirs vestavěný. Přiřazení členů této pole může být použito k úpravě adresářů již v zásobníku, alepushd apopd vestavěné soubory musí být použity k přidávání a odebírání adresářů. Přiřazení této proměnné nezmění aktuální adresář. LiDIRSTACK je zrušena, ztrácí své speciální vlastnosti, i když je následně resetována. EUID: Rozbalí se na skutečné ID uživatele aktuálního uživatele, inicializované při spuštění shellu. Tato proměnná je readonly. FUNCNAME: Název kterékoli aktuálně spouštějící funkce shellu. Tato proměnná existuje pouze při spuštění funkce shellu. Přiřazení kFUNCNAME nemá žádný vliv a vrátí chybový stav. LiFUNCNAME je zrušena, ztrácí své speciální vlastnosti, i když je následně resetována. SKUPINY: Proměnná pole obsahující seznam skupin, jejichž členem je aktuální uživatel. Přiřazení kSKUPINY nemá žádný vliv a vrátí chybový stav. LiSKUPINY je zrušena, ztrácí své speciální vlastnosti, i když je následně resetována. HISTCMD: Číslo historie nebo index v seznamu historie aktuálního příkazu. LiHISTCMD je zrušena, ztrácí své speciální vlastnosti, i když je následně resetována. HOSTNAME: Automaticky nastaveno na název aktuálního hostitele. HOSTTYPE: Automaticky nastavit na řetězec, který jednoznačně popisuje typ stroje, na kterém jebash se provádí. Výchozí nastavení je závislé na systému. LINENO: Pokaždé, když je tento parametr odkazován, shell nahrazuje desetinné číslo reprezentující aktuální sekvenční číslo (od 1) v rámci skriptu nebo funkce. Pokud není ve skriptu nebo v funkci, nenahrazuje záměna substituovaná hodnota. LiLINENO je zrušena, ztrácí své speciální vlastnosti, i když je následně resetována. MACHTYPE: Automaticky nastavit na řetězec, který plně popisuje typ systému, na kterém jebash se provádí ve standardním GNU cpu-company-system formát. Výchozí nastavení je závislé na systému. OLDPWD: Předchozí pracovní adresář nastavený příkazemCD příkaz. OPTARG: Hodnota argumentu poslední možnosti zpracované příkazemgetopts vestavěný příkaz. OPTIND: Index dalšího argumentu, který má zpracovatgetopts vestavěný příkaz. OSTYPE: Automaticky nastavena na řetězec, který popisuje operační systém, na kterém jebash se provádí. Výchozí nastavení je závislé na systému. PIPESTATUS: Proměnná pole obsahující seznam hodnot stavu ukončení z procesů v nejvíce nedávno provedeném potrubí popředí, který může obsahovat pouze jeden příkaz. PPID: ID procesu nadřazeného shellu. Tato proměnná je readonly. PWD: Aktuální pracovní adresář nastavený vCD příkaz. NÁHODNÝ: Při každém odkazu na tento parametr se generuje náhodné celé číslo mezi 0 a 32767. Sekvence náhodných čísel může být inicializována přidělením hodnoty NÁHODNÝ. LiNÁHODNÝ je zrušena, ztrácí své speciální vlastnosti, i když je následně resetována. ODPOVĚĎ: Nastavte řádek vstupu, který čtetečíst vestavěný příkaz, pokud nejsou dodány žádné argumenty. SEKUNDY: Při každém odkazu na tento parametr se vrátí počet sekund od vyvolání shellu. Je-li přiřazena hodnotaSEKUNDY, hodnota vrácená v následujících referencích je počet sekund od přiřazení plus přiřazená hodnota. Li SEKUNDY je zrušena, ztrácí své speciální vlastnosti, i když je následně resetována. SHELLOPTS: Seznam oddělených dvojteček povolených možností shellu. Každé slovo v seznamu je platným argumentem pro-Ó možnost nasoubor vestavěný příkaz. Možnosti zobrazené vSHELLOPTS jsou uvedeny jako na podleset -o. Pokud je tato proměnná v prostředí, když jebash spustí se, každá možnost shellu v seznamu bude povolena před čtením všech spouštěcích souborů. Tato proměnná je readonly. SHLVL: Zvýšeno o jeden při každém instancibash je spuštěn. UID: Rozbalí se na uživatelské ID aktuálního uživatele, inicializované při spuštění shellu. Tato proměnná je readonly. Následující proměnné používá shell. V některých případech,bash přiřadí proměnné výchozí hodnotu; tyto případy jsou zaznamenány. BASH_ENV: Je-li nastaven tento parametrbash je spuštěn shell skript, jeho hodnota je interpretována jako název souboru obsahující příkazy k inicializaci shell, jako v ~ / .bashrc . Hodnota BASH_ENV je podroben expanzi parametrů, nahrazení příkazu a aritmetické rozšíření před tím, než bude interpretován jako název souboru.CESTA se nepoužívá k vyhledání výsledného názvu souboru. CDPATH: Cesta hledání proCD příkaz. Jedná se o seznam adresářů oddělených dvojtečkami, ve kterém shell vyhledává adresáře cílů zadané příkazemCD příkaz. Hodnota vzorku je ".: ~: / Usr". Sloupce: Používá sevybrat vestavěný příkaz pro určení šířky terminálu při tisku výběrových seznamů. Automaticky nastavit po obdržení SIGWINCH. COMPREPLY: Proměnná pole, ze kterého jebash čte možné dokončení generované funkcí shellu vyvolanou programovatelným zařízením pro dokončení. FCEDIT: Výchozí editor profc vestavěný příkaz. FIGNORE: Seznam přípon oddělených dvojtečkou, který chcete ignorovat při dokončení názvu souboru. Název souboru, jehož přípona odpovídá jednomu z položek v souboruFIGNORE je vyloučen ze seznamu shodných názvů souborů. Hodnota vzorku je ".o: ~". GLOBIGNORE: Seznam vzorců oddělených dvojtečkami definující soubor názvů souborů, který má být ignorován rozšířením cesty. Pokud název souboru odpovídající vzoru rozšíření cesty odpovídá i některému vzoru vGLOBIGNORE, je odstraněn ze seznamu zápasů. HISTCONTROL: Je-li nastavena hodnota ignorespace , řádky začínající písmenem aprostor nejsou v seznamu historie zadány. Pokud je nastavena hodnota ignoredups , nejsou zadány řádky, které odpovídají poslednímu řádku historie. Hodnota ignoreboth kombinuje dvě možnosti. Pokud je tato hodnota zrušena nebo pokud je nastavena na jinou hodnotu než výše, všechny řádky přečtené analyzátorem jsou uloženy v seznamu historie podle hodnotyHISTIGNORE. Funkci této proměnné nahrazuje HISTIGNORE. Druhý a následující řádky složeného příkazu pro více řádků nejsou testovány a jsou přidány do historie bez ohledu na hodnotuHISTCONTROL. HISTFILE: Název souboru, ve kterém je uložena historie příkazu. Výchozí hodnota je ~ / .bash_history . Pokud je tato volba zrušena, historie příkazů není uložena při ukončení interaktivního shellu. HISTFILESIZE: Maximální počet řádků obsažených v souboru historie. Pokud je této proměnné přiřazena hodnota, soubor historie je v případě potřeby zkrácen, aby obsahoval více než tento počet řádků. Výchozí hodnota je 500. Soubor historie je také zkrácen na tuto velikost po zápisu při ukončení interaktivního shellu. HISTIGNORE: Seznam vzorců oddělených dvojtečkami, který se používá k určení, které příkazové řádky mají být uloženy v seznamu historie. Každý vzorek je ukotven na začátku řádku a musí odpovídat úplnému řádku (žádné implicitní "*'je připojen). Každý vzor je testován na linii po kontrolách specifikovaných vHISTCONTROL jsou použity. Kromě obvyklých znaků odpovídajících znakům skořepiny "&'odpovídá předchozímu řádku historie. "&'může uniknout zpětným lomítkem; zpětné lomítko je před pokusem o zápas odstraněno. Druhý a následující řádky složeného příkazu s více řádky nejsou testovány a přidány do historie bez ohledu na hodnotuHISTIGNORE. HISTSIZE: Počet příkazů zapamatovatelných v historii příkazů. Výchozí hodnota je 500. DOMOV: Domovský adresář aktuálního uživatele; výchozí argument proCD vestavěný příkaz. Hodnota této proměnné je také použita při provádění rozšíření tilde. HOSTFILE: Obsahuje název souboru ve stejném formátu jako / etc / hosts který by měl být čten, když shell potřebuje dokončit název hostitele. Seznam možných dokončení názvu hostitele může být změněn během spouštění shellu; při dalším pokusu o dokončení názvu hostitele po změně hodnoty,bash přidá obsah nového souboru do existujícího seznamu. Li HOSTFILE je nastavena, ale nemá žádnou hodnotu,bash pokusy o čtení / etc / hosts pro získání seznamu možných dokončení názvu hostitele. KdyžHOSTFILE je zrušeno, seznam hostitelů je vymazán. IFS: The Interní oddělovač polí se používá pro rozdělení slov po rozšíření a pro rozdělení řádků do slov sčíst vestavěný příkaz. Výchozí hodnota je " IGNOREEOF: Ovládá činnost interaktivního shellu při přijetíEOF jako jediný vstup. Pokud je hodnota nastavena, je hodnota po sobě jdoucíEOF znaky, které musí být zadány jako první znaky na vstupním řádku dřívebash výstupy. Pokud je proměnná k dispozici, ale nemá číselnou hodnotu nebo nemá žádnou hodnotu, je výchozí hodnota 10. Pokud neexistuje,EOF znamená konec vstupu do shellu. INPUTRC: Název souboru proreadline spouštěcí soubor, přepsání výchozí hodnoty ~ / .inputrc . LANG: Určuje kategorii národního prostředí pro libovolnou kategorii, která není specificky vybrána s proměnnou začínající naLC_. LC_ALL: Tato proměnná přepsá hodnotuLANG a dalšíLC_ proměnná určující kategorii národního prostředí. LC_COLLATE: Tato proměnná určuje pořadí řazení použité při třídění výsledků rozšíření cesty a určuje chování rozsahových výrazů, tříd ekvivalence a sekvencí řazení v rámci rozšíření cesty a porovnání vzoru. LC_CTYPE: Tato proměnná určuje interpretaci znaků a chování tříd znaků v rámci rozšíření cesty a porovnání vzoru. LC_MESSAGES: Tato proměnná určuje národní prostředí použité k překládání řetězců s dvojitým označením, kterým předchází a$. LC_NUMERIC: Tato proměnná určuje kategorii národního prostředí použitou pro formátování čísel. LINKY: Používá sevybrat vestavěný příkaz pro určení délky sloupce pro tisk výběrových seznamů. Automaticky nastavit po obdržení SIGWINCH. POŠTA: Pokud je tento parametr nastaven na název souboru aMAILPATH proměnná není nastavena,bashinformuje uživatele o příchodu pošty do zadaného souboru. MAILCHECK: Určuje, jak často (v sekundách)bash kontroly poštou. Výchozí hodnota je 60 sekund. Když je čas zkontrolovat poštu, shell to provede před zobrazením primárního dotazu. Pokud je tato proměnná zrušena nebo je nastavena na hodnotu, která není větší nebo rovna nule, pak shell zakázá kontrolu pošty. MAILPATH: Seznam názvů souborů oddělených dvojtečkami, které mají být zkontrolovány pro poštu. Zpráva, která má být vytištěna při příchodu pošty do určitého souboru, může být zadána oddělením názvu souboru ze zprávy pomocí znaku '?'. Pokud je použito v textu zprávy,$_ rozbalí se na název aktuálního mailového souboru. Příklad: MAILPATH = '/ var / mail / bfox?' Máte poštu ': ~ / shell-mail?' $ _ Má poštu!
Bash dodává výchozí hodnotu pro tuto proměnnou, ale umístění uživatelských poštovních souborů, které používá, závisí na systému (/ var / mail /$ USER). OPTERR: Pokud je nastavena hodnota 1,bash zobrazuje chybové zprávy generované příkazemgetopts vestavěný příkaz.OPTERR je inicializován na 1 pokaždé, když je vyvolán shell nebo je spuštěn skript shell. CESTA: Vyhledávací cesta pro příkazy. Jedná se o seznam adresářů oddělených dvojtečkami, ve kterých shell hledá příkazy. Výchozí cesta je závislá na systému a je nastavena správcem, který nainstalujebash. Společná hodnota je "/ usr / gnu / bin: / usr / local / bin: / usr / ucb: / bin: / usr / bin :. POSIXLY_CORRECT: Pokud je tato proměnná v prostředí, kdyžbash začíná, shell vstoupí posix režim před přečtením spouštěcích souborů, jako by to bylo--posix byla předložena možnost vyvolání. Je-li nastaven, když je shell spuštěn,bash umožňuje posix režim jako by příkaz set -o posix byl popraven. PROMPT_COMMAND: Je-li nastaven, je hodnota provedena jako příkaz před vydáním každé primární výzvy. PS1: Hodnota tohoto parametru se rozbalí a použije jako primární výzvu řetězec. Výchozí hodnota je " s- v $''. PS2: Hodnota tohoto parametru se rozbalí jako uPS1 a používá se jako sekundární výzva řetězec. Výchozí hodnota je "> ''. PS3: Hodnota tohoto parametru se používá jako výzva provybrat příkaz. PS4: Hodnota tohoto parametru se rozbalí jako uPS1, a hodnota je vytištěna před každým příkazembash zobrazuje během sledování spuštění. První znakPS4 je opakovaně opakovaně opakovaně označen několika úrovněmi. Výchozí hodnota je "+ ''. ČASOVÝ FORMÁT: Hodnota tohoto parametru se používá jako formátovací řetězec, který specifikuje, jak informace o časování pro potrubí předčíslíčas vyhrazené slovo by mělo být zobrazeno. The % znak zavádí sekvenci escape, která je rozšířena na časovou hodnotu nebo jiné informace. Únikové sekvence a jejich významy jsou následující. Stojky označují volitelné části. Volitelný str je číslice určující hodnotu přesnost , počet zlomkových číslic za desetinnou čárkou. Hodnota 0 způsobí, že se neprodukuje žádná desetinná tečka nebo zlomek. Mohou být uvedeny nejvýše tři místa za desetinnou čárkou; hodnoty str větší než 3 jsou změněny na 3. Pokud str není zadán, použije se hodnota 3. Volitelnýl určuje delší formát, včetně minut, formuláře MM m SS . FF s. Hodnota str určuje, zda je frakce zahrnutá. Pokud tato proměnná není nastavena,bash se chová jako by měla hodnotu $ ' nreal t% 3lR nuser t% 3lU nsys% 3lS'. Je-li hodnota null, nebudou zobrazeny žádné informace o časování. Při zobrazení řetězce formátu se přidá nový řádek. TMOUT: Pokud je hodnota nastavena na hodnotu větší než nula,TMOUT je považován za výchozí časový limit pročíst vestavěný. Thevybrat příkaz se ukončí, pokud vstup nepocházíTMOUT
Definice
Vyhrazená slova
Shell Gramatika: Jednoduché příkazy
Potrubí
Seznamy
Složené příkazy
Komentáře
Citace
Parametry
Polohové parametry
Zvláštní parametry
Shell proměnné