Mange tenker ikke på deres ledetekst som en spesielt nyttig sak, eller til og med betaler det mye oppmerksomhet. For meg er dette litt synd, som en nyttig spørsmål kan endre måten du bruker kommandolinjen på. Vel, jeg har scoured Interwebs på jakt etter de beste, mest nyttige eller noen ganger mest underholdende bash-prompter. Her, i ingen bestemt rekkefølge, er de som jeg mest sannsynlig vil bruke på mine datamaskiner.

Merk - for å bruke noen av disse anropene, kan du kopiere og lime inn "PS1 =" -linjen direkte inn i terminalen din. For å gjøre endringen permanent, lim inn linjen til slutten av filen din / / .bashrc .

1. Vis godt ansikt etter vellykket utførelse

Denne spørringen er sannsynligvis den morsomteste på listen, men er fortsatt nyttig. Tanken er at så lenge kommandoene dine utføres, viser meldingen et lykkelig ansikt. Når en kommando mislykkes, viser den et trist ansikt i stedet.

Eksempel:

Kode:

 PS1 = "\` hvis [\ $? = 0], så ekko \ [\ e [33m \] ^ _ ^ \ [\ e [0m \]; annet ekko \ [\ e [31m \] O_O \ [\ e [0m \]; fi \ `[\ u @ \ h: \ w] \\ $" 

2. Endre farge på dårlig kommando

Her er en av mine favoritter. Denne prompten har alt. Som ovenfor endrer prompten farge hvis den siste kommandoen din ikke klarte å løpe, men den forkorter også lange stier og inneholder bash-historienummeret til hver kommando for enkel henting.

Eksempel:

Kode:

 PROMPT_COMMAND = 'PS1 = "\ [\ 033 [0; 33m \] [\!] \` Hvis [[\ $? = "0"]]; deretter ekko "\\ [\\ 033 [32m \\]" ; ellers ekko "\\ [\\ 033 [31m \\]"; fi \ `[\ u. \ h: \` hvis [[`pwd | wc -c | tr -d '" `> 18]]; deretter ekko "\\ W"; annet ekko "\\ w"; fi \ `] \ $ \ [\ 033 [0m \]"; ekko -ne "\ 033] 0;` vertsnavn -s`: `pwd` \ 007" ' 

3. Flere linjer spør

Hvis du er den typen som ønsker å pakke din meldingstrykk full av informasjon, så er det her for deg. Denne er en multi-line prompt som inneholder dato / klokkeslett, full sti, bruker og vert, aktiv terminal, jevnt filtall og plassbruk.
Eksempel:

Kode:

 PS1 = "\ n \ [\ 033 [35m \] \ $ (/ bin / dato) \ n \ [\ 033 [32m \] \ w \ n \ [\ 033 [1; 31m \] \ u @ \ h : \ [\ 033 [1; 34m \] \ $ (/ usr / bin / tty | / bin / sed -e 's: / dev / ::'): \ [\ 033 [1; 36m \] \ $ (/ bin / ls -1 | / usr / bin / wc -l | / bin / sed's: :: g ') filer \ [\ 033 [1; 33m \] \ $ (/ bin / ls -lah | / bin / grep -m 1 totalt | / bin / sed 's / total //') b \ [\ 033 [0m \] -> \ [\ 033 [0m \] " 

4. Farge administrere spørringen din

Det er ikke noe spesielt fancy om denne spørringen, bortsett fra god bruk av farge for å skille de forskjellige brikkene med informasjon. Som du kan se, gir den tid, brukernavn, vertsnavn og gjeldende katalog. Ganske minimal, men nyttig.

Eksempel:

Kode:

 PS1 = "\ [\ 033 [35m \] \ t \ [\ 033 [m \] - \ [\ 033 [36m \] \ u \ [\ 033 [m \] @ \ [\ 033 [32m \] \ h: \ [\ 033 [33; 1m \] \ w \ [033 [m \] \ $ " 

5. Vis full bane

Dette er en fin, ren, minimal 2-linjers ledetekst (pluss en tom linje øverst). Du har din fulle sti på første linje og ganske mye bare brukernavnet nederst. Hvis du vil fjerne den tomme linjen ved starten av hver ledetekst, ta bare den første "\ n" ut.

Eksempel:

Kode:

 PS1 = "[\ [\ 033 [32m \] \ w] \ [\ 033 [0m \] \ n \ [\ 033 [1; 36m \] \ u \ [\ 033 [1; 33m \] -> \ [\ 033 [0m \]" 

6. Vis bakgrunnsjobber

En annen nifty 2-liner, men denne har litt info vi ikke har brukt før. Den første linjen er den normale bruker @ verten, med full bane. På den andre linjen har vi historikknummer og en telling av jobbene som kjører i bakgrunnen.

Eksempel:

Kode:

 PS1 = '\ [\ e [1; 32m \] \ u @ \ H: \ [\ e [m \] \ [\ e [1; 37m \] \ w \ [e [m \] \ n \ [\ e [1; 33m \] hist: \! \ [\ e [0; 33m \] \ [\ e [1; 31m \] jobber: \ j \ $ \ [\ e [m \] ' 

7. Vis kataloginformasjon

En veldig elegant og fin utseende hurtig design. Med denne har vi bruker / vert, antall jobber og dato / klokkeslett på topplinjen. Under det er nåværende katalog sammen med antall filer i den katalogen og deres diskbruk.

Eksempel:

Kode:

 PS1 = "\ n \ [\ e [30; 1 m \] \ [\ 016 \] l \ [\ 017 \] (\ [\ e [34; 1 m \] \ u @ \ h \ [\ e [30 ; 1m \]) - [\ e [34; 1m \] \ [\ e [30; 1m \]) - (\ [\ e [34; 1m \] \ @ \ d \ [\ e [30; 1m \]) -> \ [\ e [30; 1 m \] \ n \ [\ 016 \] m \ [\ 017 \] - (\ [\ [\ e [32; 1 m \] \ w \ [\ e [30; 1m \]) - (\ [\ e [32; 1m \] \ $ (/ bin / ls -1 | / usr / bin / wc -l | / bin / sed 's: : g ') filer, \ $ (/ bin / ls -lah | / bin / grep -m 1 totalt | / bin / sed' s / total // ') b \ [\ e [30; 1m \]) -> \ [\ e [0m \] " 

8. Min Prompt

Og til slutt, spørsmålet jeg personlig liker å bruke. Det er en modifisering av # 7, endret for å ta opp mindre plass og inkluderer bare den informasjonen jeg mest vil ha i min prompte. Jeg liker tolinjestilen som det lar meg se hele banen uten å redusere plassen for mine faktiske kommandoer.

Eksempel:

Kode:

 PS1 = "\ n \ [\ e [32; 1 m \] (\ [\ e [37; 1 m \] \ u \ [\ e [32; 1m \]) - (\ [\ e [37; 1 m \ ] stillinger: \ j \ [\ e [32; 1m \]) - (\ [\ e [37; 1 m \] \ w \ [\ e [32; 1m \]) \ n (\ [\ [\ e [37; 1m \! \! \ [\ E [32; 1m \]) -> \ [\ e [0m \] " 

Hvis du vil dele spørringen din, vennligst gjør det i kommentarene nedenfor.