LS_COLORS -- Setting für .* Dateien?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
MrScoville
Beiträge: 93
Registriert: 09.09.2016 17:20:59
Lizenz eigener Beiträge: MIT Lizenz

LS_COLORS -- Setting für .* Dateien?

Beitrag von MrScoville » 17.09.2016 16:50:46

Hallo,

entweder bin ich in der falschen Gruppe -- oder es gibt gar keine für solche "Konsolen-Fragen".

Also, ich habe ein Alias

l='ls --colors -al' in /etc/profiles.d/more_commands.sh definiert und setze in meiner .bashrc LS_COLORS. Im Moment sieht das so aus:

LS_COLORS='di=1:fi=0:ln=32:pi=33:so=33:bd=93:cd=93:or=5;31:mi=5;31:ex=31:*.exe=91'

Der letzte Teil kommt daher, dass ich viel mit Mono entwickele und dort meine "Echsen" gerne sehe.

Bevor ich jetzt ewig herumprobiere, weil Google auch nix weiß (und was Google nicht weiß, gibt's nicht?), frage ich in die Runde: Gibt es eine Möglichkeit, genau die Dateien, die ein ls -l nicht anzeigt, aber ls -al schon, sprich: alle Dateien, die mit einem Punkt beginnen, ebenfalls hervorzuheben?

'.*=96' gibt eine Fehlermeldung, dass LS_COLORS syntaktisch fehlerhaft ist. Backslashes sowohl in kleiner als auch in übertriebener Dosis helfen nicht.

Wie parst GNU ls die Variable? Offenbar nicht über reguläre Ausdrücke.

Danke im Voraus

~Sco
Man mag gar nicht glauben, wie sehr ein 4096-bittiger RSA-Schlüssel einem den Tag vermiesen kann...^^

Der so genannte "Teufel im Detail" hat einen Namen: Tight coupling :evil:

tobo
Beiträge: 1989
Registriert: 10.12.2008 10:51:41

Re: LS_COLORS -- Setting für .* Dateien?

Beitrag von tobo » 17.09.2016 22:36:27

MrScoville hat geschrieben:Gibt es eine Möglichkeit, genau die Dateien, die ein ls -l nicht anzeigt, aber ls -al schon, sprich: alle Dateien, die mit einem Punkt beginnen, ebenfalls hervorzuheben?
Versteckte Dateien sind keine spzifische Dateieigenschaft innerhalb dircolors - das wird also nicht funktionieren. Zumindest nicht dann, wenn du sie von anderen nichtspezifischen Dateien abgrenzen willst. Hervorheben kannst du die natürlich, aber eben nicht wegen ihre Eigenschaft "versteckt".
http://linux.die.net/man/5/dir_colors

maroc

Re: LS_COLORS -- Setting für .* Dateien?

Beitrag von maroc » 18.09.2016 00:40:52

Du könntest Dein Alias per for-Schleife so erweitern, dass die versteckten Dateien einzeln mit der gewünschten Farbzuweisung an die LS_COLORS angehängt werden:

Code: Alles auswählen

alias l='for i in $(ls -a | grep "^\.") ; do LS_COLORS="$LS_COLORS*$i=96:" ; done ; ls -la'

tobo
Beiträge: 1989
Registriert: 10.12.2008 10:51:41

Re: LS_COLORS -- Setting für .* Dateien?

Beitrag von tobo » 18.09.2016 02:54:15

Hübsch! Vielleicht sollte noch das stetige verlängern von LS_COLORS verhindert werden:

Code: Alles auswählen

LS_COLORS_TEMP="$LS_COLORS"
alias l='LS_COLORS="$LS_COLORS_TEMP";for i in $(ls -a | grep "^\.") ; do LS_COLORS="${LS_COLORS}*$i=96:" ; done ; ls -la'
Wobei auf Namen bezogen natürlich auch immer Kollisionen möglichen sind und aktiv nur das aktuelle Verzeichnis unterstützt wird!?

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: LS_COLORS -- Setting für .* Dateien?

Beitrag von Meillo » 19.09.2016 09:51:28

MrScoville hat geschrieben: entweder bin ich in der falschen Gruppe -- oder es gibt gar keine für solche "Konsolen-Fragen".
Hab den Thread verschoben.
Use ed once in a while!

MrScoville
Beiträge: 93
Registriert: 09.09.2016 17:20:59
Lizenz eigener Beiträge: MIT Lizenz

Re: LS_COLORS -- Setting für .* Dateien?

Beitrag von MrScoville » 19.09.2016 19:59:22

Meillo hat geschrieben:
MrScoville hat geschrieben: entweder bin ich in der falschen Gruppe -- oder es gibt gar keine für solche "Konsolen-Fragen".
Hab den Thread verschoben.
Hallo,

ich bin ja mit jedem Verschub einverstanden, aber wieso nach Softwareentwicklung und -Paketierung, Scripting? Hier in der Abteilung hätte ich ja eher erwartet etwas wie "Wie kann ich mein neues, saugeiles Spiel in ein Deb verwandeln?" und ned so einen nifty little Kleinkram wie meinen? Man staunt! Aber danke fürs Helfen beim Einparken! :)
Man mag gar nicht glauben, wie sehr ein 4096-bittiger RSA-Schlüssel einem den Tag vermiesen kann...^^

Der so genannte "Teufel im Detail" hat einen Namen: Tight coupling :evil:

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: LS_COLORS -- Setting für .* Dateien?

Beitrag von Meillo » 19.09.2016 21:03:10

MrScoville hat geschrieben: ich bin ja mit jedem Verschub einverstanden, aber wieso nach Softwareentwicklung und -Paketierung, Scripting? Hier in der Abteilung hätte ich ja eher erwartet etwas wie "Wie kann ich mein neues, saugeiles Spiel in ein Deb verwandeln?" und ned so einen nifty little Kleinkram wie meinen?
Es hat sich halt so ergeben, dass in diesem Unterforum Shell-bezogenes Zeug besprochen wird.
Use ed once in a while!

MrScoville
Beiträge: 93
Registriert: 09.09.2016 17:20:59
Lizenz eigener Beiträge: MIT Lizenz

Re: LS_COLORS -- Setting für .* Dateien?

Beitrag von MrScoville » 20.09.2016 21:30:13

Meillo hat geschrieben:Es hat sich halt so ergeben, dass in diesem Unterforum Shell-bezogenes Zeug besprochen wird.
Das erinnert mich an Linux an sich.... "Es hat sich halt ergeben", was bedeutet, dass irgendwer mal aus irgendeinem Grund irgendwas entschieden hat, und niemand ist da irgendwie "schuld" dran, sondern dazu benächtigt, weil halt...? Hast du mich persönlich auf dem Kieker, weil ich mal "Microsoft" gesagt habe...?
Man mag gar nicht glauben, wie sehr ein 4096-bittiger RSA-Schlüssel einem den Tag vermiesen kann...^^

Der so genannte "Teufel im Detail" hat einen Namen: Tight coupling :evil:

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: LS_COLORS -- Setting für .* Dateien?

Beitrag von Meillo » 20.09.2016 22:14:41

MrScoville hat geschrieben:
Meillo hat geschrieben:Es hat sich halt so ergeben, dass in diesem Unterforum Shell-bezogenes Zeug besprochen wird.
Das erinnert mich an Linux an sich.... "Es hat sich halt ergeben", was bedeutet, dass irgendwer mal aus irgendeinem Grund irgendwas entschieden hat, [...]
Genau. Sebastian Feltel hat das Forum aufgesetzt und eine Struktur angelegt, die ihm sinnvoll erschien. Dann haben Tausende Nutzer fuer Inhalte gesorgt und eine Handvoll Moderatoren mitgeholfen sie organisiert zu halten. Alle zusammen sind schuld daran (weil sie dazu beigetragen haben), dass das Forum so ist wie es ist. Wenn du irgendwas anders besser finden wuerdest, dann oeffne einfach einen Thread unter ``Lob und Kritik'' und versuche die anderen zu ueberzeugen. ;-)

Hast du mich persönlich auf dem Kieker, weil ich mal "Microsoft" gesagt habe...?
Wie soll ich diesen Satz verstehen? Und bin ueberhaupt ich angesprochen?
Use ed once in a while!

Antworten