/etc/bash.bashrc Ausgaben der Stapelbefehle einfärben

  • Hallo Zusammen,

    ich habe an das Ende der /etc/bash.bashrc versucht die Farbe der darauf folgenden Befehle zu ändern, leider ohne Erfolg:

    Code
    PS1='\[\033[01;32m\]> '
    amixer -D hw:M1010 cset iface=MIXER,name='H/W Playback Route' 0

    Hat jemand eine Idee warum der Befehl aus der bashrc auf dem Bildschirm nicht bunt ist, wärend die ganze Ausgabe der darauf händisch eingegeben Befehle durchgängig eingefärbt sind?

    Hat jemand eine Idee?

    Ich habe debian 12 minimal ohne Desktop

    Grüße Georg

  • Hallo, für Deinen Benutzer musst Du die .bashrc in Deinem Home Verzeichnis bearbeiten, dann sollte es klappen. Lasse Dir die Versteckten Dateien, die mit einem vorangestellten . in Deinem User Verzeichnis anzeigen, da findest Du dann Deine .bashrc :)

    Spoiler anzeigen

  • Leider nein :(

    Ich habe vermutlich ohne es zu wissen eine wichtige Sache verschwiegen, ich bin als Root angemeldet und hier soll es auch wirken.

    Ich habe somit die /root/.bashrc editiert.

    tut nicht.

    Der amixer Befehl wird aber ausgeführt, jedoch in schwarz, somit habe ich wenigstens nicht die falsche Datei editiert :)

  • Vielen Dank für die Mühe!

    Leider sind von der bash ausgeführte Befehle weiterhin weiß, erst wenn ich über die TTY Echo ausführe, dann wird es grün und dann ist auch weiterhin bis zum nächsten Neustart alles grün, aber danach nicht mehr.

    Edit: wenn ich ls eintippe ist es gleich weg! ip addr zB. bleibt weiterhin hiermit grün.

    Ich habe das echo auch in ein skript gepackt und dann von der bash ausführen lassen, gleiches Ergebnis..

    Schade das tut auch nicht, es muss irgendwie daran liegen wer das skript oder eben den echo-Befehl ausführt.

    PS: Ich bin inzwischen komplett auf dem User, kein root mehr.

  • Hat nicht doch noch jemand eine Idee?

    Kurze Zusammenfassung:

    Code
    PS1='\[\033[01;32m\]> '

    Wird dieser Befehl aus der bashrc ausgeführt, dann greift er nicht, wird er manuell von der Konsole ausgeführt, dann greift er.

    Andere Befehle aus der bashrc nach diesem Befehl werden jedoch ausgeführt, somit kann man davon ausgehen, dass die bashrc den PS1 Befehl irgendwie ignoriert, vermutlich hat es damit zu tun, wer den Befehl ausführt.

  • Ich habe nach langem rumprobieren eine Lösung gefunden:

    Code
    echo -e "\e[0;31m" && (dann Befehl in einer Zeile)

    Das dumme, man kann leider keine unterschiedlichen Farbabschnitte mit in die Zeile packen, da geht nur eine Farbe per Zeile, aber vielleicht fällt mir dazu auch noch was ein...

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!