nl.phhsnews.com


nl.phhsnews.com / Hoe maak je de Bash-prompt Verander kleuren wanneer aangemeld bij een server?

Hoe maak je de Bash-prompt Verander kleuren wanneer aangemeld bij een server?


Als je de hele werkdag toegang hebt tot meerdere servers, dan kun je vertellen met welke je werkt op een dag een blik op basis van een kleurenschema kan erg handig zijn. De SuperUser Q & A-post van vandaag helpt een lezer om een ​​kleurrijk nirvana in zijn werkomgeving te bereiken.

De vraag en antwoordsessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een door de gemeenschap gestuurde groep van Q & A-websites.

De Vraag

SuperUser reader nitins wil weten hoe de Bash Prompt van kleur te veranderen wanneer hij op een server is ingelogd:

Is er een manier om de Bash Prompt dynamisch te maken, zodat deze van kleur verandert wanneer ik op een server ben ingelogd ? Ik wil dat de kleur groen is wanneer ik mijn eigen persoonlijke systeem gebruik, maar verander in rood wanneer ik verbinding heb met servers. Ik heb een groot aantal servers waartoe ik toegang heb en wil geen andere .bashrc op elk van deze servers.

Hoe verander je de Bash Prompt van kleur wanneer je bent ingelogd naar een server?

De Answer

SuperUser-bijdrager Matei David heeft het antwoord voor ons:

Remote Bash-prompts worden ingesteld door de afstandsbediening ~ / .bashrc , dus je moet nog steeds kopieer het naar de externe servers. U kunt echter een enkele ~ / .bashrc voor alle hosts gebruiken en de Bash Prompt-kleur instellen op basis van de hostnaam:

Notes

  • Stel PS1 niet in als het is nog niet ingesteld (dus als de shell niet interactief is). Testen om te zien of PS1 "niet-leeg" is, is een veel voorkomende manier om te achterhalen of de shell interactief is en dat je programma's die dat doen niet wil verwarren (misschien is een nauwkeurigere test het controleren om te zien of $ - i ).
  • Als u wilt dat deze code wordt uitgevoerd bij het inloggen op een externe server, moet u een van de profielbestanden altijd bron ~ / .bashrc (Ik veronderstel dat je dat weet).
  • In PS1 moeten de escape-codes worden ingesloten in [... ] .
  • [033 [m zet de voorgrond en achtergrond terug naar hun standaardwaarden, dus hier : w verschijnt op de achtergrond van de terminal / achtergrond.
  • [033 [48; 5; XXXm 033 [38; 5; YYYm stelt de achtergrond / voorgrond in op XXX / YYY .
  • Probeer een script dat de beschikbare kleuren dumpt.
  • Om te controleren en te zien wat de Bash Prompt zou eruit zien, gebruik: echo -e "<33[48;5;16m33[38;5;196mhost33[m:dir> $"

Heb je iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden van andere technisch onderlegde Stack Exchange-gebruikers lezen? Bekijk hier de volledige discussiethread.

Image Credit: Emx (Wikipedia)


Waarom Screen Savers niet langer nodig zijn

Waarom Screen Savers niet langer nodig zijn

Schermbeveiligingen zijn een overbodige oplossing van een vorige technologie. Ondanks hun naam besparen schermbeveiligers niet langer alles - alles wat ze doen is elektriciteit verspillen. Schermbeveiligingen zijn niet nodig op moderne, platte LCD-schermen. Als u uw computer automatisch uitschakelt, verschijnt de nieuwe "schermbeveiliging" - het bespaart energie, verlaagt uw elektriciteitsrekening en verlengt de levensduur van uw batterij.

(how-to)

Opdrachtcommando's uitvoeren vanuit een snelkoppeling <1099> voor instructies

Opdrachtcommando's uitvoeren vanuit een snelkoppeling <1099> voor instructies

Windows biedt u allerlei manieren om opdrachtpromptopdrachten uit te voeren. Natuurlijk zou je een opdrachtpromptvenster kunnen openen en gewoon de opdracht kunnen typen. Je zou ook een batch-script kunnen maken (of een bash-script of PowerShell-script als dat je ding is). En eerlijk gezegd, als je van plan bent meer dan één opdracht uit te voeren of als je iets complexs nodig hebt, is het schrijven van een script een betere optie.

(how-to)