V prostredí bash je príkazový riadok text zobrazený pri výzve na zadanie. Vo väčšine systémov to vyzerá takto:

Vo výzve môžete mať informácie pred spustením ľubovoľných príkazov. Vyššie uvedená výzva napríklad zobrazuje nasledujúce informácie.
- kto ste (používateľ s menom)
- kde ste (počítač s názvom myhost )
- aký je váš pracovný adresár ( ~, čo je skratka pre váš domovský adresár)
Najdôležitejšie je pravdepodobne znak dolára (" $ "), čo je špeciálny znak, ktorý označuje, že ste prihlásený ako užívateľ bez oprávnenia root. Ak ste boli prihlásený ako root, tento znak bude namiesto toho znakom libry (" # ").
Reťazec reprezentujúci výzvu je uložený v špeciálnej premennej prostredia s názvom PS1 . Pre vyššie uvedenú výzvu vyzerá jej hodnota nasledovne.
"chránené poštou" h: W \ t
V tomto reťazci sú štyri špeciálne znaky: u, h, W, $ . Jedná sa o uniknuté sekvencie znakov, ktoré sú nahradené skutočnými hodnotami pri každom zobrazení výzvy.
Špeciálne znaky
Sekvencie špeciálnych znakov uvedené v tabuľke nižšie môžu byť použité v výzve bash shell.
Poradie znakov | Preloží do |
---|---|
\ a | Znak "alarm". Spustí pípnutie alebo bliká obrazovka |
\ d | Aktuálny dátum zobrazený vo formáte Weekday Month Date (napr. Streda 13. máj ). |
D { formát } | Aktuálny dátum a čas sa zobrazia podľa formátu interpretovaného strftime . Ak je formát vynechaný, {{} zobrazuje aktuálny 12-hodinový čas AM / PM (napr. 07:23:01 PM ). |
\ e | Únikový znak (ASCII 27) |
e [ číslo m | Označuje začiatok sekvencie na zobrazenie vo farbe, kde číslo je číslo alebo pár čísel, ktorý určuje, akú farbu a štýl použiť. Nižšie nájdete zoznam farieb a ich dvojíc. |
\ E [m | Označuje koniec sekvencie, ktorá sa má zobraziť vo farbe. |
\ h | Názov hostiteľa stroja, až po prvý " . " Napríklad, ak je názov hostiteľa systému myhost.mydomain, h zobrazuje myhost |
\ H | Úplný názov počítača. |
\ j | Počet pracovných miest, ktoré spravuje shell. |
\ l | Identifikátor terminálového zariadenia shellu, zvyčajne jednociferné číslo. |
\ n | Nový riadok |
\ r | Návrat nákladu |
\ s | Názov shellu (názov procesu, ktorý inicioval aktuálnu bash session). |
\ t | Aktuálny čas zobrazený v 24-hodinovom formáte HH: MM: SS (napr. 19:23:01 ). |
\ T | Aktuálny čas zobrazený v 12-hodinovom formáte HH: MM: SS (napr. 07:23:01 ). |
\ @ | Aktuálny čas zobrazený v 12-hodinovom formáte HH: MM: SS AM / PM (napr. 07:23:01 PM ). |
\ A | Aktuálny čas v 24-hodinovom formáte HH: MM (napr. 19:23 ). |
\ u | Užívateľské meno aktuálneho používateľa. |
\ v | Číslo verzie Bash (napr. 4.3 ). |
\ V | Bash verzia a číslo záplaty (napr. 4.3.30 ). |
\ w | Aktuálny adresár. Domovský adresár používateľa je skrátený ako tilda (" ~ "). Napríklad / usr / bin, ~, alebo ~ / documents |
\ W | Základný názov aktuálneho pracovného adresára (napr. Bin, ~ alebo dokumenty ). |
\! | Číslo aktuálneho príkazu. |
\ # | Číslo príkazu aktuálneho príkazu (čísla príkazov sú ako čísla histórie, ale pri spustení novej relácie bash sa resetujú na nulu). |
nnn | ASCII znak, ktorého osmičková hodnota je nnn. |
\\ | Spätné lomítko |
\ [ | Označuje začiatok akejkoľvek sekvencie netlačiacich znakov, ako sú napríklad kódy na ovládanie terminálu. |
\] | Označuje koniec netlačiacej postupnosti. |
\ $ | Vytlačí #, ak je UID nula (superuser) alebo $ ak je väčšia ako nula (ktokoľvek iný). |
Zmena výzvy pre aktuálnu reláciu
Premennú prostredia PS1 môžete nastaviť tak, ako akoukoľvek inou premennou v bash, s formulárom príkazu NAME = VALUE . Ak chcete nastaviť štandardnú výzvu, môžete na príkazovom riadku zadať nasledujúce.
PS1 = "[chránený e-mailom] h: W" \ t
... A vaša výzva sa okamžite zmení. Všimnite si posledný priestor za znakom dolára v reťazci pre ďalší priestor po výzve, čo uľahčuje rozlišovanie príkazov, ktoré zadávate z výzvy. Extra priestor nie je potrebný, ale odporúča sa.
Všimnite si, že v príkaze nie sú medzery medzi PS1, = a reťazcom.
Zmena výzvy pre všetky budúce relácie
Ak chcete zmeniť výzvu pre každú novú reláciu, musíte upraviť svoje súbory bash. Pri každom spustení terminálovej relácie sa tieto súbory, ak existujú, čítajú a spúšťajú ako skripty:
/ etc / profile ~ / .bash_profile ~ / .bash_login
~ / .Profile
Prvý súbor, / etc / profile, je spúšťací skript pre ľubovoľného používateľa v systéme, ktorý spustí bash reláciu. Ak chcete zmeniť výzvu pre každého používateľa, musíte tento súbor upraviť a na to potrebujete práva superuživatela.
sudo vi / etc / profile
Napríklad vyššie uvedený príkaz vás vyzve na zadanie hesla a ak sa nachádzate v zozname sudoers, otvorte univerzálny súbor bash startup ako superuser pomocou editora vi .
Ďalšie tri súbory sú vyhľadávané v poradí uvedenom vyššie a spustené po súbore / etc / profile . Tieto tri súbory žijú vo vašom domovskom adresári, takže sú vykonávané len pre vás. Môžu definovať PS1 na viac ako jednom mieste, takže by ste si mali pozorne prečítať súbory a zistiť, ako sú nakonfigurované vo vašom systéme. Mnohé systémy budú napríklad používať inú hodnotu PS1 v závislosti od toho, či váš terminál podporuje farbu alebo nie.
Ktorýkoľvek z troch súborov môže existovať a môže byť použitý pre vašu bash reláciu, ale ak existuje viac ako jeden, bude vykonaný v uvedenom poradí.
Ak nechcete odstrániť alebo zmeniť riadky v spúšťacích súboroch, môžete tiež pridať nový príkaz PS1 = na koniec jedného zo súborov, aby ste mohli použiť vlastnú výzvu.
Pridanie farby do výzvy
Ak používate terminál, ktorý podporuje farby (a pravdepodobne ste), do výzvy môžete pridať farbu. Farby sa pridávajú pomocou špeciálnych sekvencií znakov, ktoré nasledujú tento formát:
e [ číslo m | Začína farebná časť. Číselná hodnota je špeciálne číslo alebo pár čísel, ktorý určuje farbu. |
\ E [m | označuje koniec farebnej časti; obnoví predvolenú farbu |
Napríklad reťazec výzvy:
PS1 = "e [1; 35mToto je jasne purpurová. [0; 35m ... a to je tmavo fialová. \ T
Zobrazí výzvu, ktorá vyzerá takto:

Tu je zoznam farieb, ktoré môžete použiť, a čísla, ktoré ich určujú:
Číslo (čísla) | Farba / Štýl | Číslo (čísla) | Farba / Štýl |
---|---|---|---|
0; 30 | čierna | 1; 30 | Tmavo-sivá |
0; 31 | červená | 1; 31 | Jasne červená |
0; 32 | zelená | 1; 32 | Svetlozelená |
0; 33 | hnedý | 1; 33 | žltá |
0; 34 | Modrá | 1; 34 | Jasne modrá |
0; 35 | Fialová | 1; 35 | Jasný Purple |
0; 36 | Tyrkysový | 1; 36 | Jasné azúrové |
0; 37 | šedá | 1; 37 | biely |
4; 30 | Čierna, podčiarknutá | 40 | pozadia: Tmavo šedá |
4; 31 | Červená, podčiarknutá | 41 | pozadie: Červená |
4; 32 | Zelená, podčiarknutá | 42 | pozadia: Zelená |
4; 33 | Hnedá, podčiarknutá | 43 | pozadie: Žltá |
4; 34 | Modrá, podčiarknutá | 44 | pozadie: Modrá |
4; 35 | Fialová, podčiarknutá | 45 | pozadie: Purple |
4; 36 | Azúrová, podčiarknutá | 46 | pozadie: Azúrová |
4; 37 | Šedá, podčiarknutá | 47 | Pozadie: Sivá |
Tu sú niektoré príklady a ako vyzerajú:
PS1 = "e [0; 31mRed e [0; 32mGreen e [0; 33mBrown [0; 34mBlue e [0; 35mPurple e [0; 36mCyan e [0; 37mGray] [0;
PS1 = "Podčiarknuté: e [4; 31mRed e [4; 32mGreen e [4; 33mBrown e [4; 34mBlue e [4; 35mPurple e [4; 36mCyan e [4; m "

PS1 = "e [44m e [1; 35mBright fialová na modrom pozadí
