Terminal zeigt keine Farben für Verzeichnislisten an

9

Ich weiß nicht, warum meine Bash-Sitzung keine Farben zeigt. Ich habe sowohl Terminal als auch iTerm ausprobiert.

Ich habe versucht:

  1. ls -G
  2. Einstellung export CLICOLOR=1undexport LSCOLORS=GxFxCxDxBxegedabagaced
  3. Verwenden Sie verschiedene Themen wie solarisiert und etwas anderes

Die Versionen meiner Software sind:

  1. Bash: GNU Bash, Version 3.2.51 (1) -Veröffentlichung (x86_64-apple-darwin13)
  2. osx: 10.9.2

Ich habe Homebrew installiert

Ich weiß nicht, welche anderen Informationen hilfreich sein könnten. Ich verbringe viel Zeit mit der Shell, dieses Problem wird sehr ärgerlich :)

Bearbeiten: In den Terminaleinstellungen habe ich "Terminal deklarieren als: xterm-256color" und "ANSI-Farben anzeigen" sowie "Helle Farben für fetten Text verwenden".

Shahbaz
quelle
Versuchen Sie zu laufen printf '\e[32mtest\n', wenn das funktioniert, dann ist es ein Problem mit ls.
0942v8653
Ich habe auch dieses Problem. Um das zu erweitern, was Sie versucht haben, bleibt das Problem mit dem Befehl gls von coreutils bestehen. Der obige Kommentar ändert erfolgreich die Farbe der Eingabeaufforderung. Mein Problem scheint mit dem SolarizedDark-Thema zu sein, da das Ändern der Farbe in den Terminal.app-Einstellungen in anderen Themen funktioniert.
Agweber

Antworten:

4

Ich würde vorschlagen, die GNU Core Utilities über Homebrew zu installieren , wodurch Sie die "Linux" -Version ls(anstelle der mit OS X gelieferten FreeBSD-Version) sowie andere leistungsstarke Tools erhalten

brew update
brew install coreutils

Sie sollten dann in der Lage sein, Farben anzuzeigen mit:

gls --color

Außerdem lesen Sie die Einsprüche PATH zu konfigurieren , so dass Sie Befehle wie verwenden können , glsmit ihren normalen Namen, das heißt ls:

$ brew info coreutils
coreutils: stable 8.23 (bottled)
https://www.gnu.org/software/coreutils
Conflicts with: ganglia, idutils
/usr/local/Cellar/coreutils/8.23 (214 files, 10M)
  Poured from bottle
/usr/local/Cellar/coreutils/8.23_1 (214 files, 10M) *
  Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/coreutils.rb
==> Dependencies
Build: xz 
==> Caveats
All commands have been installed with the prefix 'g'.

If you really need to use these commands with their normal names, you
can add a "gnubin" directory to your PATH from your bashrc like:

    PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"

Additionally, you can access their man pages with normal names if you add
the "gnuman" directory to your MANPATH from your bashrc as well:

    MANPATH="/usr/local/opt/coreutils/libexec/gnuman:$MANPATH"
Dieseltime
quelle
Es ist erwähnenswert, dass gls (GNU ls) keine Farbe aktiviert, indem einfach die Umgebungsvariable CLICOLOR definiert wird, wie dies der Standardbefehl BSD ls von OS X tut. Außerdem funktioniert der Schalter -G zum Aktivieren der Farbe in BSD ls weder für GNU ls noch --color für BSD ls. Sie MÜSSEN einen Alias ​​für ls definieren, um den Schalter --color hinzuzufügen, wenn alle Ihre ls-Befehle eingefärbt werden sollen. Als Referenz von "man ls" (BSD-Geschmack): "-G Aktiviert die kolorierte Ausgabe. Diese Option entspricht der Definition von CLICOLOR in der Umgebung."
Mark Edington
Mit gls --color habe ich nach der Installation von coreutils die Standardfarbe erhalten, nicht die Farben aus meiner LSCOLORS var. Da ich meinen Pfad so eingestellt hatte, dass die Gnu-Tools standardmäßig mit ihren üblichen Namen verwendet wurden, ging ich einfach which lszu / bin / ls zurück, was gut funktionierte. Überraschenderweise ärgerte dies die aktuelle Shell, die ls nicht mehr finden konnte, aber neue Shells funktionierten gut. Bash hat keine Wiederholung, deshalb verstehe ich nicht, warum es an / usr / local / opt / coreutils / libexec / gnubin / ls aufgehängt wurde
Aaron McMillin
1

Wählen Sie unter Temrinals Terminal> Einstellungen das Profil für den von Ihnen verwendeten Sitzungstyp aus und überprüfen Sie auf der Registerkarte Erweitert, welche Terminaldeklaration Sie verwenden. Höchstwahrscheinlich unterstützt die ausgewählte keine ANSI-Färbung. xterm-256color sollte das unterstützen, was Sie erwarten.

ColonelMode
quelle
Ich habe gerade überprüft, Terminal ist bereits auf xterm-256color eingestellt (aktualisierte Frage, um diese und andere Informationen wiederzugeben)
Shahbaz