Hoe Maak Je de Bash Prompt de Kleuren Veranderen Wanneer u Aangemeld bent op een Server?

0
314

Als u toegang tot meerdere servers over de hele dag, dan is in staat om te vertellen welke je werkt in een oogopslag op basis van een kleurenschema dat kan heel nuttig zijn. Vandaag de SuperUser Q&A post helpt een lezer het bereiken van een kleurrijke nirvana in zijn werkomgeving.

Vandaag Vraag & Antwoord sessie komt ons hoffelijkheid van SuperUser—een onderverdeling van de Stack Exchange, een community-gedreven groepering van de Q&A-sites.

De Vraag

SuperUser reader nitins wil weten hoe je de Bash Prompt de kleuren veranderen wanneer u aangemeld bent op een server:

Is er een manier om de Bash Prompt dynamische, zodat het verandert van kleur wanneer ik ben ingelogd in een server? Ik wil de kleur groen te zijn bij het gebruik van mijn eigen systeem, maar rood worden als ik ben verbonden aan de servers. Ik heb een groot aantal servers dat ik en wil niet te hebben om een ander .bashrc op elke en elke één van hen.

Hoe maak je de Bash Prompt de kleuren veranderen wanneer u aangemeld bent op een server?

Het Antwoord

SuperUser bijdrage Matei David heeft het antwoord voor ons:

Externe Bash-Prompts worden ingesteld door de externe ~/.bashrc, dus je zult nog steeds nodig om het te kopiëren naar de externe servers. Echter, u kunt gebruik maken van een ~/.bashrc voor alle hosts en stel de Bash Prompt kleur gebaseerd op de naam van de host:

Opmerkingen

  • Niet ingesteld PS1 als deze nog niet is ingesteld (d.w.z. als de shell is niet interactief). Testen om te zien of de PS1 is “niet leeg” is een veel voorkomende manier om uit te vinden als de shell is interactief en u wilt niet te verwarren programma ‘ s die dat doen (misschien wel een meer accurate test is te controleren of $- i).
  • Als u wilt dat deze code wordt uitgevoerd wanneer u zich aanmeldt bij een externe server, moet u een van de profiel-bestanden altijd source ~/.bashrc (ik ben in de veronderstelling dat u weet dat).
  • In PS1, de escape-codes moeten worden tussen […].
  • [033[m zet de voorgrond en de achtergrond te herstellen, dus hier :w verschijnt in de terminal voorgrond/achtergrond.
  • [033[48;5;xxx m33[38;5;YYYm stelt de achtergrond en voorgrond op XXX/YYY.
  • Voor een script dat dumpt de beschikbare kleuren, probeer colortest.
  • Om te controleren wat de Bash Prompt eruit zou zien, gebruik: de echo-e “<33[48;5;16m33[38;5;196mhost33[m:dir>$ “

Nog iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden van de andere tech-savvy Stack Exchange-gebruikers? Bekijk de volledige bespreking draad hier.

Image Credit: Emx – (Wikipedia)