Kann ich nicht erkennen, dass LS_OPTIONS oder LS_COLORS erkannt wird?

1947
A T

Versuchen, --color=autoals Standardargument zu erhalten ls.

$ ls --version ls (GNU coreutils) 8.21 … $ echo $LS_COLORS no=00:fi=00:di=00;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=00;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35: $ echo $LS_OPTIONS --color=auto 

Leider lsbekomme ich beim Laufen immer noch eine nicht-farbige Ausgabe (beim ls --color=automanuellen Laufen ergeben sich Farben).

Wie mache ich --color=autoein Standardargument ls?

0
Gibt es einen Alias ​​mit verschiedenen Optionen? Versuchen Sie 'type ls', um zu sehen, ob es einen Alias ​​gibt. \ ls sollte die nicht abgeglichenen ls ausführen. jaychris vor 10 Jahren 0
Danke, aber alles, was ich dort bekomme, ist ein absoluter Pfad zu den `ls`, die ich in` $ HOME \ opt \ bin \ ls` installiert habe. A T vor 10 Jahren 0

2 Antworten auf die Frage

2
pixelbeat

Ich denke, Sie haben vielleicht gedacht, dass die Unterstützung von GREP_OPTIONS impliziert, dass auch LS_OPTIONS gilt, beispielsweise in: https://stackoverflow.com/questions/793483/unable-to-put-colors-for-ls-by-ls-options

Dies ist jedoch nicht der Fall, also machen Sie am besten so etwas in Ihrer bashrc oder gleichwertig:

alias ls='ls --color=auto' 
Ich habe gehört, dass die Verwendung eines Alias, bei dem stattdessen eine Umgebungsvariable angegeben werden kann, nicht empfohlen wird… alles gut, es funktioniert jetzt A T vor 10 Jahren 0
0
Edward

Mehr als drei Jahre zu spät zu dieser Partei, aber ich arbeite gerade durch ein ähnliches Problem und habe weitere Informationen für zukünftige Sucher.

Es scheint, dass, während grepaktiv sucht GREP_OPTIONS, lsNICHT sucht LS_OPTIONS. Also müsstest du sowas machen alias ls='ls $LS_OPTIONS '. Sie können selbst entscheiden, ob dies einen Versuch wert ist, im Gegensatz zu einem Alias, der Ihre gewünschten Optionen direkt auflistet.

(Wenn sich Personen mit scharfem Blick wundern, warum ich in diesem Alias-Wert ein nachlaufendes Leerzeichen habe, dann liegt dies an dieser Zeile aus dem ALIASES-Abschnitt der bash-Manpage (GNU bash, Version 4.3.42 (1) -release): "Wenn das letzte Zeichen des Alias-Werts ein Leerzeichen ist, wird das nächste Befehlswort, das auf den Alias ​​folgt, ebenfalls auf Alias-Erweiterung geprüft." Das erscheint mir praktisch, deshalb füge ich in allen Aliasnamen ein Leerzeichen ein.)