A Bash Prompt testreszabása (és színezése)

May 18, 2025
Karbantartás és optimalizálás
BETŰTELEN TARTALOM

A legtöbb Linux disztribúció úgy konfigurálja a Bash parancsot, hogy valami hasonló legyen felhasználónév @ hosztnév: $ könyvtár . De beállíthatja a Bash parancsot, hogy tartalmazzon bármit, ami csak tetszik, és akár a kívánt színeket is kiválaszthatja.

Az itt bemutatott példalépéseket az Ubuntu 16.04 LTS rendszeren hajtották végre. A folyamatnak meg kell egyeznie a többi Linux disztribúción, bár az alapértelmezett Bash parancs és a .bashrc fájl beállításai kissé eltérhetnek.

Ahol az azonnali változó tárolva van

A Bash parancssori konfigurációját a felhasználói fiók .bashrc fájlja tárolja, amely a következő címen található: ~ / .bashrc . Tehát, ha a felhasználónév bob, akkor a fájl itt található /home/bob/.bashrc .

Megnyithatja a fájlt az aktuális Bash változó megtekintéséhez. A nano-t használjuk példaszövegszerkesztőnek, bár Ön is használhatja mi , emacs vagy bármely más szövegszerkesztő, amellyel Ön jól érzi magát. Nyisson meg egy terminált és futtassa:

nano ~ / .bashrc

Görgessen le a Ψ1 = szakasz. Az első változó meglehetősen bonyolultnak tűnik, mert színes információkat tartalmaz - ezt később elmagyarázzuk. A második változó, színinformációk nélkül, a következőképpen szól:

{debian_chroot:+($debian_chroot)} USD \ u @ \ h: \ w \ $

Ez még mindig kissé bonyolult a ${debian_chroot:+($debian_chroot)} bitek. Ezek csak azt mondják a Bash-nak, hogy tudassa veled, ha Debian chroot környezetet használsz, és általában nem jelennek meg. Ezeket figyelmen kívül hagyva a Bash prompt változó alapértelmezett felépítése:

\ u @ \ h: \ w \ $

\ u jelzi a felhasználónevét, @ a @ jelet jelöli, \h jelzi a gazdagép nevét (számítógép nevét), : a: karaktert jelöli, \ban ben a munka könyvtárat jelöli, és \$ $ -ot jelöl, ha normál felhasználói fiók vagy # -t, ha root vagy. Tehát, ha mindezt összerakod, megkapod felhasználónév @ hosztnév: működő_könyvtár $ .

A Bash parancs megváltoztatásához egyszerűen hozzá kell adnia, el kell távolítania vagy átrendeznie a speciális karaktereket a PS1 változóban. De sokkal több változó használható, mint az alapértelmezett.

Egyelőre hagyja el a szövegszerkesztőt - nanóban nyomja meg a Ctrl + X billentyűkombinációt a kilépéshez. Megmutatjuk, hogyan kísérletezhet a változókkal, mielőtt valóban újat írna a .bashrc fájlba.

Hogyan hozzunk létre egy egyedi Bash-parancsot

A Bash parancs konfigurációját a PS1 változó tárolja. A PS1 változó tartalmának új változóba történő mentéséhez futtassa a következő parancsot:

ALAPVETÉS = $ PS1

Mostantól a PS1 változót különböző értékekre állíthatja a kísérlethez. Például az első sor itt a felszólítást egy alapvető „user $”, a második pedig a „user: working_directory $” parancsra állítja.

PS1 = "\ u \ $"

PS1 = "\ u: \ w \ $"

Ha valaha is vissza akar térni az alapértelmezett parancsra, futtassa a következő parancsot.

PS1 = $ DEFAULT

A Bash visszaáll az alapértelmezett parancssorba, annak köszönhetően, hogy ezeket az alapértelmezett beállításokat korábban elmentette. Ne feledje, hogy az itt végrehajtott módosítások csak ideiglenesek az aktuális Bash-munkamenetre, így bármikor kijelentkezhet és újra bejelentkezhet, illetve bezárhatja és újra megnyithatja a terminálablakot, hogy visszatérjen az alapértelmezett kérdésre. De a fenti sor lehetővé teszi, hogy egyszerűen visszatérjen az alapértelmezett Bash parancsra anélkül, hogy gondot okozna a kijelentkezés vagy az ablak bezárása.

Bármely karaktert vagy szöveget hozzáadhat a változóhoz. Tehát, hogy az alapértelmezett parancsot a „Hello World” elé tegye, használhatja:

PS1 = "Helló világ \ u @ \ h: \ w \ $"

Most, hogy letudta az alapokat, csak tudnia kell, mi az összes speciális karakter. Valószínűleg nem fog sok ilyen érdekelni, de itt van a teljes lista, amint megjelenik a Bash kézikönyv :

  • Harang karakter: \a
  • A dátum, „Hétköznap Hónap dátum” formátumban (pl. „Május 26., kedd”): \ d
  • A formátum átkerül az strftime (3) fájlba, és az eredmény beillesztésre kerül a prompt stringbe; egy üres formátum lokálspecifikus időábrázolást eredményez. A merevítők szükségesek: \ D{format}
  • Menekülési karakter: \ is
  • A hosztnév az első „.” -Ig: \h
  • A gazdagép neve: \H
  • A shell által jelenleg kezelt munkák száma: \ j
  • A shell terminál eszközének alapneve: \ l
  • A newline: \ n
  • Kocsi vissza: \ r
  • A shell neve, a $ 0 basename (az utolsó perjel után következő rész): \ s
  • Az idő, 24 órás ÓÓ: HH: SS formátumban: \t
  • Az idő 12 órás ÓÓ: HH: SS formátumban: \T
  • Az idő 12 órás reggel / pm formátumban: \@
  • Az idő, 24 órás ÓÓ: HH formátumban: \A
  • A jelenlegi felhasználó felhasználóneve: \ u
  • A Bash verziója (pl. 2.00): ev
  • A Bash verziója + patchlevel (pl. 2.00.0) kiadása: EV
  • Az aktuális munkakönyvtár, a $ HOME tildével rövidítve (a $ PROMPT_DIRTRIM változót használja): \ban ben
  • A $ PWD alapneve, a $ HOME tildével rövidítve: \BAN BEN
  • A parancs előzményszáma: \!
  • A parancs parancsszáma: \#
  • Ha a tényleges uid értéke 0, #, különben $: \$
  • Az a karakter, amelynek ASCII kódja az nnn oktális értéke: \ nnn
  • Visszajel: \\
  • Kezdje el a nem nyomtatható karakterek sorozatát. Ezt fel lehet használni egy terminál vezérlési sorrend beágyazására a promptba: \[
  • A nem nyomtatott karakterek sorozatának befejezése: \]

Tehát, ha hozzá szeretné adni a dátumot és az időt a Bash parancssorhoz, és a munkakönyvtárat a második sorba szeretné helyezni, használhatja a következő felépítést:

PS1 = "[\d \t] \ u @ \ h \ n \ w \ $"

A szögletes zárójelek itt egyáltalán nem szükségesek, de segítenek vizuálisan széttörni a dolgokat, és könnyebben olvashatóbbá teszik a sort. Ahogy korábban kitértünk rá, bármilyen szöveget vagy normál karaktert felvehet a tetszőleges változóba, ezért bátran használhatja azt, amelyik megfelel Önnek.

Van még egy erőteljes trükk, amelyről tudnia kell: Bármelyik parancs kimenetét hozzáadhatja a parancssorhoz. Amikor megjelenik a prompt, a Bash futtatja a parancsot, és kitölti az aktuális információkat. Ehhez egyszerűen adjon meg minden parancsot, amelyet kettő között futtatni szeretne ` karakterek. Ez nem aposztróf - ez a súlyos akcentus, amely a Tab billentyű felett jelenik meg a billentyűzeten.

Tegyük fel például, hogy meg szeretné tekinteni a Linux kernel verzióját a parancssorban. Használhat olyan sort, mint a következő:

PS1 = "\ u @ \ h a ʻnév -s -r" \ w \ $ "

Másik példaként tegyük fel, hogy meg szeretné tekinteni a rendszer üzemidejét és a terhelés átlagát, a üzemidő parancs. Használhatja a következő konstrukciót, amely az üzemidőt a saját sorára helyezi a felszólítás többi része előtt.

PS1 = "(ʻuptime`) \ n \ u @ \ h: \ w $"

Kísérletezzen nyugodtan különböző speciális karakterekkel és parancsokkal az ideális parancssor összeállításához.

Színek hozzáadása a Bash Prompt-hoz

Miután kitalálta a kívánt figyelmeztetést, hozzáadhat színeket. Ez valójában nagyon egyszerű, de a változó rettenetesen rendetlen és bonyolultnak tűnik, ha nem érted, amit nézel.

Például a korábbi alapértelmezett színparancs változó a következő volt:

{debian_chroot:+($debian_chroot)} $ [\033[01;32m\] \ u @ \ h \ [\033[00m\]: \ [\033[01;34m\] \ w \ [\033[00m\] \ $

Vagy eltávolíthatja a debian_chroot biteket még egyszer:

\ [\033[01;32m\] \ u @ \ h \ [\033[00m\]: \ [\033[01;34m\] \ w \ [\033[00m\] \ $

Ez valójában csak a \ u @ \ h: \ w $ változó a korábbiaktól, de színinformációkkal. Valóban, néhány részre bonthatjuk:

\[\033[01;32m\]\ u @ \ h\[\033[00m\]:\[\033[01;34m\]\ban ben\[\033[00m\]\$

Az első szakasz a \ u @ \ h bit, amelyet színes információk előznek meg, amelyek zöldre váltják. A második a : karakter, amelyet színinformációk előznek meg, amelyek eltávolítják a színezést. A harmadik a \ban ben bit, színinformációk előzik meg, amelyek kékre váltják. A negyedik az \$ bit, amelyet színinformációk előznek meg, amelyek eltávolítják a színezést.

Miután megértette, hogyan kell saját színcímkéket készíteni, hozzáadhatja a kívánt színeket a Bash parancs bármely szakaszához.

A következőket kell tudnia: A teljes színkóddal kapcsolatos információkat meg kell adnia a \[ és \] karakter s. A címke belsejében el kell kezdeni a kettőt \033[ vagy \ is [ jelezni Bash-nek, hogy ez színes információ. Mindkét \033[ és \ is [ tedd ugyanezt. \ is [ rövidebb, így kényelmesebb lehet használni, de mi használni fogjuk \033[ itt, mivel megfelel az alapértelmezés szerint használtnak. A címke végén a következővel kell végződnie m \ egy színcímke végének jelzésére.

Ezt lebontva, minden színcímke így néz ki. Az egyetlen különbség a COLOR helyére adott információ, amely meghatározza a tényleges színt:

\[\033[SZÍNm \]

A Bash lehetővé teszi az előtér szövegének megváltoztatását, olyan attribútumok hozzáadását, mint a „félkövér” vagy „aláhúzás”, és háttérszín beállítását.

Itt vannak az előtér szövegének értékei:

  • Fekete: 30
  • Kék: 34
  • Cián: 36
  • Zöld: 32
  • Lila: 35
  • Piros: 31
  • Fehér: 37
  • Sárga: 33

Például, mivel a lila szöveg a 32-es színkód, ezért használhatja \[\033[ 32 m \] lila szöveghez.

Megadhat egy attribútumot is a szöveghez. Ezt az attribútumot a színszám elé kell tenni, pontosvesszővel (;) elválasztva. Az ilyen attribútumokkal rendelkező szöveg másképp fog kinézni a különböző terminálemulátorokban.

Itt vannak a szövegattribútumok értékei:

  • Normál szöveg: 0
  • Félkövér vagy világos szöveg: 1 (Ez a terminál emulátorától függ.)
  • Halvány szöveg: 2
  • Aláhúzott szöveg: 4
  • Villogó szöveg: 5 (Ez a legtöbb terminálemulátorban nem működik.)
  • Fordított szöveg: 7 (Ez megfordítja az előtér és a háttér színét, így fehér alapon fekete szöveget fog látni, ha az aktuális szöveg fekete háttéren fehér szöveg.)
  • Rejtett szöveg: 8

Nem kell feltétlenül megadni a normál szövegattribútumot. Egyébként ez az alapértelmezett.

Például, mivel a piros szöveg a 31. kód, a félkövér szöveg pedig az 1. kód, ezért használhatja \[\033[ 1;31 m \] félkövér piros szöveghez.

Megadhat háttérszínt is, de nem adhat hozzá attribútumot a háttérszínhez.

Itt vannak a háttérszín értékei:

  • Fekete háttér: 40
  • Kék háttér: 44
  • Cián háttér: 46
  • Zöld háttér: 42
  • Lila háttér: 45
  • Piros háttér: 41
  • Fehér háttér: 47
  • Sárga háttér: 43

Például, mivel a kék háttér a 44-es kód, \[\033[ 44 m \] kék hátteret határozna meg.

Megadhatja mind az előtér, mind a háttér szín címkéit. Például 42 zöld hátteret és 31 piros szöveget jelöl. Tehát annak érdekében, hogy az alapértelmezett parancs piros szöveggé váljon zöld háttéren, használja a következőket:

Ψ1 = "\ [\ 033 [42m \] \ [\ 033 [31m \] \ u @ \ h: \ w \ $ "

Itt csak egyetlen háttérszínt, majd egyetlen előtér szövegszínt adunk meg, amely a prompt elején kezdődik, és a prompt összes szövegére vonatkozik. Azonban annyi színcímkét adhat meg a változóban, amely a felszólítás különböző szakaszait tetszés szerint színezi.

A háttér és az előtér szövegszínei tovább mennek a promptnál, hacsak nem adja meg a 00 színkódot, törölje a színinformációkat. Ezt a címkét a változóban is felhasználhatja a formázás visszaállítására az alapértelmezett helyre valahol a felszólításban. Például a következő sor minden színezést befejez a \$ karakter.

Ψ1 = "\ [\ 033 [42m \] \ [\ 033 [31m \] \ u @ \ h: \ w \\ [\ 033 [00m \] \ $ "

Az új alapértelmezett kérés beállítása

Miután befejezte a színekkel való kísérletezést, rendelkeznie kell az aktuális munkamenetben tetsző Bash-felszólítással. De valószínűleg állandóvá kívánja tenni az új parancsot, hogy az automatikusan felhasználásra kerüljön az összes Bash-munkamenetben.

Ehhez csak meg kell változtatnia a .bashrc fájl PS1 változójának tartalmát, amelyet korábban megvizsgáltunk.

Nyissa meg a .bashrc fájlt a kívánt szövegszerkesztőben, így:

nano ~ / .bashrc

Görgessen lefelé, és keresse meg a PS1 = részt. Csak cserélje ki az alapértelmezett változót a testreszabott változóra. Valószínűleg el akarja hagyni a ${debian_chroot:+($debian_chroot)} A bitek önmagukban - mindenesetre csak akkor jelennek meg, ha chroot környezetben vagy.

Írja be színes PS1 változóját a ha [ "$color_prompt" = yes ]; azután vonal. Írja be a változó színek nélkül a más vonal.

Mentse a fájlt, és zárja be a szövegszerkesztőt. Például a fájl nano-ba történő mentéséhez nyomja meg a Ctrl + O billentyűkombinációt, nyomja meg az Enter billentyűt, majd nyomja meg a Ctrl + X billentyűkombinációt a kilépéshez.

A következő alkalommal, amikor új Bash shellt indít - például a terminálon történő bejelentkezéssel vagy egy új terminálablak megnyitásával -, megjelenik a testreszabott felszólítása.

.entry-tartalom .entry-footer

How To Customize (and Colorize) Your Bash Prompt

Customize The Bash Prompt

How To Customize Your Bash Prompt ($PS1) [Linux]

How To Customize Your Bash Terminal Prompt

Customize & Colorize Your Bash Prompt/Terminal

Customize Your Bash Prompt With Escape Sequences

How To Change The Terminal Prompt (MacOS Zsh)

Change Terminal Prompt Color! (Linux Mint & Ubuntu) EASY!

Linux Tip | How To Customize Your BASH Environment

Customizing Your Terminal | Linux Terminal With Fancy Bash Prompt | Linux Terminal Beautification

How To Customize Your Terminal | Bashrc File | Colors & Display Prompt

Linux Terminal Love - Tips & Tricks #6 - Customise Terminal Bash Prompt


Karbantartás és optimalizálás - Most Popular Articles

Hogyan lehet használni az egeret és a billentyűzetet több számítógépen a határok nélküli egérrel?

Karbantartás és optimalizálás Jul 17, 2025

Ha több számítógéped van az asztalodnál, akkor valószínűleg tudod, hogy fájdalom egynél több billentyűzet és egér használata. A Microsoft eszközének használatáva..


Parancsikon létrehozása a rendszer-visszaállítási pont létrehozásához a Windows rendszerben

Karbantartás és optimalizálás Oct 28, 2025

Ablakok' Rendszer-visszaállítás nem kap annyi dicséretet, mint egykor, annak ellenére, hogy ez még mindig hihetetlenül hasznos funkció. Saját fórum..


Kiemelés és áthúzás anélkül, hogy az egérgombot lenyomva tartanánk a Windows rendszerben

Karbantartás és optimalizálás Mar 26, 2025

BETŰTELEN TARTALOM Ha érintőpadot vagy trackpadot használ, vagy ízületi gyulladása vagy más problémája van az egér használatakor, akkor nehéz lehet az egér elsődleg..


Hogyan hozhatunk létre egyedi vibrációs csengőhangokat a Vybe névjegyekkel

Karbantartás és optimalizálás Mar 25, 2025

BETŰTELEN TARTALOM Ha értekezleten tartózkodik, vonaton tartózkodik, vagy valamilyen más okból elnémítja a telefonját, a rezgés jelezheti Önt, amikor hívást fogad. De..


Kérdezze meg a HTG-t: jelenítse meg a képméretet a Google Képek alkalmazásban, a lapok megőrzése a CCleaner használata közben, és mit kell biztonsági másolatot készíteni a Windows dobozon

Karbantartás és optimalizálás Oct 24, 2025

BETŰTELEN TARTALOM Hetente egyszer összeszedünk néhány olvasói kérdést, amelyekre nemrégiben válaszoltunk, és bemutatjuk őket. Ezen a héten azt vizsgáljuk, hogyan le..


Hogyan lehet megtalálni 3G vagy Wi-Fi sebességét Android telefonján

Karbantartás és optimalizálás Aug 5, 2025

Kíváncsi arra, hogy milyen sebességet ér el az Android telefonja? Ma megvizsgáljuk, hogyan lehet egyszerűen ellenőrizni Wi-Fi vagy 3G sebességét a Speedtest.net Speed ​​Test alka..


Hogyan lehet pénzt keresni otthonról a technikai készségek felhasználásával a CrossLoop piactéren

Karbantartás és optimalizálás Aug 19, 2025

Technikai készségekkel rendelkezik ... barátai és családtagjai segítséget kérnek, és sok online fórumon megosztja ismereteit másokkal. Ma megtanítalak arra, hogyan lehet ezt a tec..


Kedvenc Firefox-kiegészítők

Karbantartás és optimalizálás Aug 5, 2025

Nem, ez nem egy lista "A LEGJOBB VALAHA" meghosszabbítások ... annyira beteg vagyok ettől. Csak felsorolom azokat, amelyeket használok, és soha nem állítok ..


Kategóriák