Hvis du har adgang til flere servere i hele arbejdsdagen, så kan du fortælle, hvilken du arbejder med på en blik baseret på et farveskema kan være meget nyttigt. Dagens SuperUser Q & A-indlæg hjælper en læser med at opnå en farverig nirvana i sit arbejdsmiljø.
Dagens Spørgsmål og Svar-sessions kommer til vores side med SuperUser-en underafdeling af Stack Exchange, en community-driven gruppe af Q & A-websteder. Spørgsmålet
Er der mulighed for at lave dynamisk Bash Prompt, så det ændrer farve, når jeg er logget ind på en server ? Jeg vil have farven til at være grøn, når jeg bruger mit eget personlige system, men skift til rødt, når jeg er forbundet med servere. Jeg har et stort antal servere, som jeg har adgang til og ikke ønsker at sætte en anden
.bashrc på hver enkelt af dem. Hvordan laver du Bash Prompt ændre farver, når du logger til en server?
Svaret
Remote Bash Prompts indstilles af fjernbetjeningen
~ / .bashrc , så du skal stadig kopiere den til de eksterne servere. Du kan dog bruge en enkelt ~ / .bashrc til alle værter og indstille Bash Prompt-farven baseret på værtsnavnet: Noter
Angiv ikke
- PS1 hvis den er ikke allerede indstillet (dvs. hvis skallen ikke er interaktiv). Afprøvning for at se, om PS1 er "ikke-tom" er en meget almindelig måde at finde ud af, om skallen er interaktiv, og du vil ikke forvirre programmer, der gør det (det er nok en mere præcis test, der tjekker for at se om $ - indeholder i ). Hvis du vil have denne kode kørt, når du logger ind på en ekstern server, skal du have en af profilfilerne altid kilde
- ( I
- PS1 skal escape-koderne vedlægges i [... ] . > [033 [m
- nulstiller forgrunden og baggrunden til deres standardindstillinger, så her vises : w i terminalforgrunden / baggrunden. [033 [48; 5; XXXm 033 [38; 5; YYYm
- indstiller baggrunden / forgrunden til XXX / YYY . For et script, der dumper de tilgængelige farver, skal du prøve at kolbe.
- For at se, hvad Bash Prompt vil se ud, brug:
- echo -e " $" <