In letzter Zeit habe ich angefangen, Bash intensiv zu verwenden, also habe ich beschlossen, dass ich mit einem besser dran wäre .bashrc
. Ich verwende Ubuntu 16.04 LTS. Hier ist mein.bashrc
. Da ist kaum etwas drin. Nichts, was auch nur im Entferntesten mit Farbe zu tun hätte.
function most_active_files_git {
# https://stackoverflow.com/a/7686616/5698202
git log --pretty=format: --name-only | sort | uniq -c | sort -rg
}
function sort_files_by_size_current_directory {
ls -lShr
}
function find_main_function {
grep -r -- 'main[ ]*(\|int main\|__main__\|main\s* ='
}
Wenn ich diese Datei kopiere ~/
und ein neues Terminal öffne, ist keine Farbe zu sehen. Wenn ich sie lösche .bashrc
und ~/
ein neues Terminal öffne, erscheinen die Farben wieder.
Farbiger Text von Vim und Git funktioniert jedoch einwandfrei. Es werden keine Farben angezeigt, wenn ich ls
oder grep
eines der Systemdienstprogramme verwende.
Dinge, die ich gelesen und ausprobiert habe: -
alias ls='ls --color=auto'
- Das gefällt mir nicht, aber es funktioniert. Ist das die einzige Möglichkeit, es zum Laufen zu bringen?force_color_prompt=yes
- Habe auch versucht, dies oben auf meins zu legen.bashrc
. Funktioniert nicht.- Habe an jeder Einstellung in der Menüleiste herumgebastelt. Es zeigt sich, dass die Farbeinstellungen überhaupt nicht berührt wurden. Trotzdem erscheinen sie nicht
Und warum haben so einfache Änderungen an der Konfiguration zu etwas so Unabhängigem geführt?
Antwort1
Ihre neue ~/.bashrc
Datei überschrieb eine Standarddatei, die /etc/skel
beim Erstellen des Benutzerkontos aus dem Verzeichnis kopiert wurde. Diese Datei enthielt unter anderem die Farbaufforderung und Aliase für ls
und grep
.
Anstatt eine neue zu erstellen ~/.bashrc
, kopieren Sie die Standarddatei erneut und fügen Sie Ihre Funktionsdefinitionen dort hinzu - oder erstellen Sie eine separate Datei für die Funktionen undQuellees aus dem Original~/.bashrc