Dateinamensortierung ignoriert Sonderzeichen am Namensanfang

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
MoonKid
Beiträge: 513
Registriert: 12.03.2012 22:36:43

Dateinamensortierung ignoriert Sonderzeichen am Namensanfang

Beitrag von MoonKid » 14.08.2016 09:59:38

Ich war schon kurz davor einen Bug-Report für Thunar zu schreiben, als mir aufviel, dass das Verhalten auch auf der Bash so ist.

Simple:

Code: Alles auswählen

$ ll
insgesamt 12
drwxr-xr-x 2 user user 4096 Aug 14 09:49 B/
drwxr-xr-x 2 user user 4096 Aug 14 09:49 _C/
drwxr-xr-x 2 user user 4096 Aug 14 09:50 D/
Der Unterstricht liegt definitiv nicht zwischen B und D. ;) Hier ist also eine gewisse Intelligenz am Werk. Rechnerrisch müsste "_C" am Ende auftauchen, weil "_" einen höheren Wert hat, als "Z".
Tatsächlich ist es auf meinen anderen Linux-basierten Systemen (ein Fantec Streaming Device und ein QNAP Nas) so, dass Ordner mit einem "_" am Anfang als erstes in einem Listing gezeigt werden. Genau das wollte ich auch so.

Nun wäre die Frage, wo sitzt diese "Intelligenz"? Wo kann man das konfigurieren? Wie gesagt, scheint ja nicht nur "ls" davon betroffen zu sein. Auch "Thunar" zeigt das so an und nutzt vermutlich nicht "ls" um solche Anzeigen zu generieren.

Übrigens sind die Zahlenwerte der Zeichen auf meinem System folgende (Python3 code):

Code: Alles auswählen

>>> ord('B')
66
>>> ord('C')
67
>>> ord('D')
68
>>> ord('_')
95

Benutzeravatar
spiralnebelverdreher
Beiträge: 1296
Registriert: 23.12.2005 22:29:03
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Frankfurt am Main

Re: Dateinamensortierung ignoriert Sonderzeichen am Namensan

Beitrag von spiralnebelverdreher » 14.08.2016 10:49:55

MoonKid hat geschrieben:Ich war schon kurz davor einen Bug-Report für Thunar zu schreiben, als mir aufviel, dass das Verhalten auch auf der Bash so ist.

Simple:

Code: Alles auswählen

$ ll
insgesamt 12
drwxr-xr-x 2 user user 4096 Aug 14 09:49 B/
drwxr-xr-x 2 user user 4096 Aug 14 09:49 _C/
drwxr-xr-x 2 user user 4096 Aug 14 09:50 D/
Ich vermute mal, dass "ll" eine Alias-Definition für einen "ls" Befehl mit mehreren Optionen ist. Poste doch mal, wie bei dir "ll" definiert ist.

MoonKid
Beiträge: 513
Registriert: 12.03.2012 22:36:43

Re: Dateinamensortierung ignoriert Sonderzeichen am Namensan

Beitrag von MoonKid » 14.08.2016 14:03:56

Ach ja! Gute Frage.

Code: Alles auswählen

$ unalias ls
$ alias
alias la='ls -laF'
alias ld='ls -ldF'
alias ll='ls -lF'
$ ls -l
insgesamt 12
drwxr-xr-x 2 user user 4096 Aug 14 09:49 B
drwxr-xr-x 2 user user 4096 Aug 14 09:49 _C
drwxr-xr-x 2 user user 4096 Aug 14 09:50 D

Benutzeravatar
heisenberg
Beiträge: 3559
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Dateinamensortierung ignoriert Sonderzeichen am Namensan

Beitrag von heisenberg » 14.08.2016 14:42:52

Nachdem das nicht das einfachste Vorgehen ist, würde ich sagen, dass das absichtlich so gewollt ist.

Eine simple Suchfunktion würde das von Dir gewünschte Verhalten zeigen. Nach das nicht so ist, wurden bestimmte Sonderzeichen wahrscheinlich mit Zusatzlogik von der Filterung ausgenommen.
Nun wäre die Frage, wo sitzt diese "Intelligenz"?
Na bei ls ganz klar in ls. Bei Thunar halt auch irgendwo im Quellcode.

Konfigurierbar? Hmm. Wahrscheinlich gar nicht.

Vielleicht bringt Dir das durchlesen von Manpage und Infopage von ls weitere Informationen.
Jede Rohheit hat ihren Ursprung in einer Schwäche.

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

Re: Dateinamensortierung ignoriert Sonderzeichen am Namensan

Beitrag von tobo » 14.08.2016 14:52:54

Sortierreihenfolge ist LC_COLLATE. Was passiert bei

Code: Alles auswählen

LC_COLLATE=C ls -l

MoonKid
Beiträge: 513
Registriert: 12.03.2012 22:36:43

Re: Dateinamensortierung ignoriert Sonderzeichen am Namensan

Beitrag von MoonKid » 14.08.2016 16:03:46

tobo hat geschrieben:Sortierreihenfolge ist LC_COLLATE. Was passiert bei

Code: Alles auswählen

LC_COLLATE=C ls -l
So passt es (entsprechend des Zahlenwert der Buchstaben).

Thunar allerdings ignoriert diese Variable.

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

Re: Dateinamensortierung ignoriert Sonderzeichen am Namensan

Beitrag von tobo » 14.08.2016 16:34:36

MoonKid hat geschrieben:Thunar allerdings ignoriert diese Variable.
Das musst du dann auch exportieren und dann aus der entsprechenden Shell Thunar starten. Falls das Verhalten generell existieren soll, dann kannst du das nach /etc/profile respektive für den Benutzer nach ~/.profile schreiben (export LC_COLLATE=C). Dir muss dann natürlich auch klar sein, dass ZZZ vor aaa steht und das nicht jedes Programm zwingend die voreingestellte Sortierreihenfolge einhalten muss!?

Antworten