Dziwne sortowanie plików

Te, które nie mieszczą się w powyższych kategoriach, a mają coś wspólnego ze Slackware.

Moderatorzy: Moderatorzy, Administratorzy

addos
Użytkownik
Posty: 158
Rejestracja: 2007-09-17, 13:50

Dziwne sortowanie plików

Post autor: addos »

Mam zagadkę odnośnie sortowania plików.
Teoretycznie te 2 pliki (pierwszy i ostatni) powinny być obok siebie a są rozdzielone.

Wynik polecenia ls -la:

Kod: Zaznacz cały

TVN - Teraz my - Ewa Kopacz vs Marek Balicki [1_2].flv
TVN - Teraz my - Ewa Kopacz vs Marek Balicki (2009.11.09) [1_2].wmv
TVN - Teraz my - Ewa Kopacz vs Marek Balicki (2009.11.09) [2_2].wmv
TVN - Teraz my - Ewa Kopacz vs Marek Balicki (2009.11.09) [całość].wmv
TVN - Teraz my - Ewa Kopacz vs Marek Balicki (2009.11.09).avi
TVN - Teraz my - Ewa Kopacz vs Marek Balicki [2_2].flv
Czy ja czegoś nie widzę, czy czegoś jeszcze nie wiem?
Nie widzę żadnej przyczyny takiego zachowania.
To samo jest w Krusaderze.

Przyjrzyjcie się temu ... może wy coś zauważycie :)
Awatar użytkownika
dienet
Moderator
Posty: 2105
Rejestracja: 2007-07-24, 18:58
Lokalizacja: Racibórz/Rybnik

Re: Dziwne sortowanie plików

Post autor: dienet »

U mnie:

Kod: Zaznacz cały

-rw-r--r--  1 dienet users     0 2010-01-03 14:48 TVN\ -\ Teraz\ my\ -\ Ewa\ Kopacz\ vs\ Marek\ Balicki\ (2009.11.09)\ [1_2].wmv
-rw-r--r--  1 dienet users     0 2010-01-03 14:48 TVN\ -\ Teraz\ my\ -\ Ewa\ Kopacz\ vs\ Marek\ Balicki\ (2009.11.09)\ [2_2].wmv
-rw-r--r--  1 dienet users     0 2010-01-03 14:48 TVN\ -\ Teraz\ my\ -\ Ewa\ Kopacz\ vs\ Marek\ Balicki\ (2009.11.09)\ [ca?o??].wmv
-rw-r--r--  1 dienet users     0 2010-01-03 14:48 TVN\ -\ Teraz\ my\ -\ Ewa\ Kopacz\ vs\ Marek\ Balicki\ (2009.11.09).avi
-rw-r--r--  1 dienet users     0 2010-01-03 14:48 TVN\ -\ Teraz\ my\ -\ Ewa\ Kopacz\ vs\ Marek\ Balicki\ [1_2].flv
-rw-r--r--  1 dienet users     0 2010-01-03 14:49 TVN\ -\ Teraz\ my\ -\ Ewa\ Kopacz\ vs\ Marek\ Balicki\ [2_2].flv
Robiłem:

Kod: Zaznacz cały

touch "nazwa_z_twojego_postu"
Ostatnio zmieniony 2010-01-03, 14:50 przez dienet, łącznie zmieniany 2 razy.
Pozdr0
dienet
[img]http://i164.photobucket.com/albums/u19/slawek15/kotekeo0lq3.jpg[/img]
Awatar użytkownika
Flash
Użytkownik
Posty: 633
Rejestracja: 2004-11-09, 18:14
Lokalizacja: Myszkow
Kontakt:

Re: Dziwne sortowanie plików

Post autor: Flash »

Jakieś znaki których nie widać? Zmień nazwę obu plików wpisując ją ręcznie i zobacz ponownie.
Awatar użytkownika
mina86
Moderator
Posty: 3343
Rejestracja: 2004-06-14, 21:58
Lokalizacja: Linux 5.x x86_64
Kontakt:

Re: Dziwne sortowanie plików

Post autor: mina86 »

Kod: Zaznacz cały

alias ls
echo "$LS_OPTIONS"
/bin/ls -l
Zastrzegam sobie prawo nieanalizowania postów pisanych niepoprawną polszczyzną.
Post generated automatically by A.I. system code name ‘mina86’ in response to the previous one.
addos
Użytkownik
Posty: 158
Rejestracja: 2007-09-17, 13:50

Re: Dziwne sortowanie plików

Post autor: addos »

Stworzyłem 3 całkowicie nowe pliki o łatwych nazwach (o zerowej wielkości: 0 KB).
1. TVN [1_2].flv
2. TVN [2_2].flv
3. TVN (2009.11.09) [1_2].wmv

I zgadnijcie :) Dalej jest to samo: ten 3 o innej nazwie wskoczył w środek: w Krusaderze i w konsoli :D

--
EDIT:

Dopiero teraz zobaczyłem post mina86.

Wynik polecenia alias:

Kod: Zaznacz cały

alias d='dir'
alias dir='/bin/ls $LS_OPTIONS --format=vertical'
alias ls='/bin/ls $LS_OPTIONS'
alias mc='. /usr/share/mc/bin/mc-wrapper.sh'
alias v='vdir'
alias vdir='/bin/ls $LS_OPTIONS --format=long'
Tylko nie bardzo rozumiem co z tym dalej zrobić :(
Ostatnio zmieniony 2010-01-03, 15:08 przez addos, łącznie zmieniany 1 raz.
Awatar użytkownika
dienet
Moderator
Posty: 2105
Rejestracja: 2007-07-24, 18:58
Lokalizacja: Racibórz/Rybnik

Re: Dziwne sortowanie plików

Post autor: dienet »

Kod: Zaznacz cały

[(T61)~]$ alias ls
alias ls='/bin/ls $LS_OPTIONS'
[(T61)~]$ echo "$LS_OPTIONS"
 -F -b -T 0 --color=auto 
Pozdr0
dienet
[img]http://i164.photobucket.com/albums/u19/slawek15/kotekeo0lq3.jpg[/img]
addos
Użytkownik
Posty: 158
Rejestracja: 2007-09-17, 13:50

Re: Dziwne sortowanie plików

Post autor: addos »

U mnie jest tak:

$ alias ls

Kod: Zaznacz cały

alias ls='/bin/ls $LS_OPTIONS'
$ echo "$LS_OPTIONS"

Kod: Zaznacz cały

-F -b -T 0 --color=auto
Awatar użytkownika
mina86
Moderator
Posty: 3343
Rejestracja: 2004-06-14, 21:58
Lokalizacja: Linux 5.x x86_64
Kontakt:

Re: Dziwne sortowanie plików

Post autor: mina86 »

Sortowanie przy polskim LC_COLLATE jest jakieś dziwne, może należałoby to gdzieś zgłosić... Natenczas dodaj sobie do ~/.bash_profile:

Kod: Zaznacz cały

export LC_COLLATE=C
Ostatnio zmieniony 2010-01-03, 15:34 przez mina86, łącznie zmieniany 1 raz.
Zastrzegam sobie prawo nieanalizowania postów pisanych niepoprawną polszczyzną.
Post generated automatically by A.I. system code name ‘mina86’ in response to the previous one.
addos
Użytkownik
Posty: 158
Rejestracja: 2007-09-17, 13:50

Re: Dziwne sortowanie plików

Post autor: addos »

Niestety ale jak bym nie ustawił tej zmiennej to i tak sortuje tak samo.
Czy u kogoś kto stworzy sobie na nowo 3 pliki o nazwach jakie podałem wcześniej:

Kod: Zaznacz cały

Stworzyłem 3 całkowicie nowe pliki o łatwych nazwach (o zerowej wielkości: 0 KB). 
1. TVN [1_2].flv 
2. TVN [2_2].flv 
3. TVN (2009.11.09) [1_2].wmv
sortuje się poprawnie?
sp7foy
Użytkownik
Posty: 167
Rejestracja: 2008-02-26, 15:07
Lokalizacja: Skierniewice

Re: Dziwne sortowanie plików

Post autor: sp7foy »

addos pisze:Niestety ale jak bym nie ustawił tej zmiennej to i tak sortuje tak samo.
Czy u kogoś kto stworzy sobie na nowo 3 pliki o nazwach jakie podałem wcześniej:

Kod: Zaznacz cały

Stworzyłem 3 całkowicie nowe pliki o łatwych nazwach (o zerowej wielkości: 0 KB). 
1. TVN [1_2].flv 
2. TVN [2_2].flv 
3. TVN (2009.11.09) [1_2].wmv
sortuje się poprawnie?
Obojętnie od LC_COLLATE, LS_OPTIONS i aliasów zawsze kolejność mam: 3,1,2
Slack 12.2, bez UTF.
Awatar użytkownika
ydoom
Użytkownik
Posty: 261
Rejestracja: 2009-08-27, 14:24

Re: Dziwne sortowanie plików

Post autor: ydoom »

Kod: Zaznacz cały

ydoom:tmp$ /usr/bin/ls -1
[1_2].flv
(2009.11.09) [1_2].wmv
[2_2].flv
ydoom:tmp$ /usr/bin/ls -f1
[1_2].flv
[2_2].flv
(2009.11.09) [1_2].wmv
Ostatnio zmieniony 2010-01-03, 21:24 przez ydoom, łącznie zmieniany 2 razy.
addos
Użytkownik
Posty: 158
Rejestracja: 2007-09-17, 13:50

Re: Dziwne sortowanie plików

Post autor: addos »

@ydoom
Nie jestem pewny ale opcja -f zdejmuje nakaz sortowania i wyświetla pliki w takiej kolejności, w jakiej zostały utworzone na dysku.
Jeśli więc utworzyłeś je tak jak ja: najpierw te dwa podobne a potem ten 3 inny to tak się właśnie wyświetlą :)

Co do moich ustawień to fakt: korzystam z UTF8 dla całości: konsola i KDE.

Hmmm... może jeszcze jakieś inne pomysły?
Awatar użytkownika
mina86
Moderator
Posty: 3343
Rejestracja: 2004-06-14, 21:58
Lokalizacja: Linux 5.x x86_64
Kontakt:

Re: Dziwne sortowanie plików

Post autor: mina86 »

addos pisze:Niestety ale jak bym nie ustawił tej zmiennej to i tak sortuje tak samo.
sp7foy pisze:Obojętnie od LC_COLLATE, LS_OPTIONS i aliasów zawsze kolejność mam: 3,1,2
Zwyczajnie wam nie wierzę:

Kod: Zaznacz cały

[mina86@erwin ~/tmp/t]$ LC_COLLATE=pl_PL /bin/ls -1
TVN [1_2].flv
TVN (2009.11.09) [1_2].wmv
TVN [2_2].flv
[mina86@erwin ~/tmp/t]$ LC_COLLATE=C /bin/ls -1
TVN (2009.11.09) [1_2].wmv
TVN [1_2].flv
TVN [2_2].flv
Zastrzegam sobie prawo nieanalizowania postów pisanych niepoprawną polszczyzną.
Post generated automatically by A.I. system code name ‘mina86’ in response to the previous one.
addos
Użytkownik
Posty: 158
Rejestracja: 2007-09-17, 13:50

Re: Dziwne sortowanie plików

Post autor: addos »

$ LC_COLLATE=pl_PL /bin/ls -1

Kod: Zaznacz cały

TVN [1_2].flv
TVN (2009.11.09) [1_2].wmv
TVN [2_2].flv
$ LC_COLLATE=C /bin/ls -1

Kod: Zaznacz cały

TVN [1_2].flv
TVN (2009.11.09) [1_2].wmv
TVN [2_2].flv
$ set | grep LC

Kod: Zaznacz cały

LC_ALL=pl_PL.UTF-8
MAILCHECK=60
$ cat /etc/profile.d/lang.sh | grep export

Kod: Zaznacz cały

#export LANG=en_US
#export LANG=C
#export LANG=en_US.UTF-8
#export LANG=en_US.ISO8859-1
#export LC_COLLATE=C

export LANG=pl_PL.UTF-8
export LC_ALL=pl_PL.UTF-8
export LESSCHARSET=latin1
$ cat /etc/rc.d/rc.font

Kod: Zaznacz cały

setfont -v lat2-16.psfu.gz
$ cat /etc/rc.d/rc.keymap

Kod: Zaznacz cały

/usr/bin/loadkeys -u pl2
$ cat /etc/lilo.conf | grep append

Kod: Zaznacz cały

append=" vt.default_utf8=1"
$ cat /etc/fstab

Kod: Zaznacz cały

/dev/sda5     swap                 swap        defaults               0   0
/dev/sda1     /                    ext4        defaults               1   1
/dev/sda6     /home                ext4        defaults               1   2
/dev/sda2     /mnt/Linux_2         ext4        user,noauto,defaults   1   2
/dev/sda3     /mnt/Linux_3         ext4        user,noauto,defaults   1   2

/dev/sda7     /mnt/Filmy           xfs         user,auto,defaults     1   2
/dev/sda8     /mnt/Magazyn         xfs         user,auto,defaults     1   2

/dev/sdb1     /mnt/k1              auto        user,noauto,rw,umask=113,fmask=113,dmask=002,shortname=winnt,noexec,utf8   0   0
/dev/sdc1     /mnt/k2              auto        user,noauto,rw,umask=113,fmask=113,dmask=002,shortname=winnt,noexec,utf8   0   0
/dev/sdd1     /mnt/k3              auto        user,noauto,rw,umask=113,fmask=113,dmask=002,shortname=winnt,noexec,utf8   0   0
/dev/sde1     /mnt/k4              auto        user,noauto,rw,umask=113,fmask=113,dmask=002,shortname=winnt,noexec,utf8   0   0

#S_1TB
#/dev/sdf1     /mnt/S_1TB_root      ext4        user,noauto,defaults   1   2
/dev/sdf2     /mnt/S_1TB_root_2    reiserfs    user,noauto,defaults   1   2
/dev/sdf3     /mnt/S_1TB_root_3    ext4        user,noauto,defaults   1   2
/dev/sdf6     /mnt/S_1TB_home      reiserfs    user,noauto,defaults   1   2
/dev/sdf7     /mnt/S_1TB_Filmy     xfs         user,noauto,defaults   1   2
/dev/sdf8     /mnt/S_1TB_Magazyn   xfs         user,noauto,defaults   1   2

#S_500
#/dev/sdf1     /mnt/S_500_C         ntfs-3g     user,noauto,rw,umask=113,fmask=113,dmask=002,noexec,locale=pl_PL.utf8   0   0
#/dev/sdf2     /mnt/S_500_D         ntfs-3g     user,noauto,rw,umask=113,fmask=113,dmask=002,noexec,locale=pl_PL.utf8   0   0
#/dev/sdf2     /mnt/S_500_root      ext4        user,noauto,defaults   1   2
#/dev/sdf3     /mnt/S_500_root_2    ext4        user,noauto,defaults   1   2
#/dev/sdf6     /mnt/S_500_home      ext4        user,noauto,defaults   1   2
#/dev/sdf8     /mnt/S_500_Magazyn   xfs         user,noauto,defaults   1   2

#/dev/sdf1     /mnt/usb             auto        user,noauto,rw,umask=113,fmask=113,dmask=002,shortname=winnt,noexec,utf8   0   0
#/dev/sdg1     /mnt/usb_2           auto        user,noauto,rw,umask=113,fmask=113,dmask=002,shortname=winnt,noexec,utf8   0   0

/dev/sr0      /mnt/dvd             auto        user,noauto,ro   0   0

devpts        /dev/pts             devpts      gid=5,mode=620   0   0
proc          /proc                proc        defaults         0   0
tmpfs         /dev/shm             tmpfs       defaults         0   0
Przepraszam za fstab ale już mi się nie chciało go ciąć (a może się komuś przyda bo UTF8 działa OK).

No jak nic, prawdę mówię :D
Awatar użytkownika
alekow
Użytkownik
Posty: 268
Rejestracja: 2007-11-30, 17:33
Lokalizacja: Poznań

Re: Dziwne sortowanie plików

Post autor: alekow »

addos, mam to samo co Ty. Żeby to zmienić musisz zrezygnować ze zmiennej LC_ALL.

Wpisz do lang.sh:

Kod: Zaznacz cały

export LANG="pl_PL.utf8"
export LC_CTYPE="pl_PL.utf8"
export LC_NUMERIC="pl_PL.utf8"
export LC_TIME="pl_PL.utf8"
export LC_COLLATE=C
export LC_MONETARY="pl_PL.utf8"
export LC_MESSAGES="pl_PL.utf8"
export LC_PAPER="pl_PL.utf8"
export LC_NAME="pl_PL.utf8"
export LC_ADDRESS="pl_PL.utf8"
export LC_TELEPHONE="pl_PL.utf8"
export LC_MEASUREMENT="pl_PL.utf8"
export LC_IDENTIFICATION="pl_PL.utf8"
I dodaj "kratkę" do linijki zawierającej LC_ALL:

Kod: Zaznacz cały

#export LC_ALL="pl_PL.utf8"
A następnie wpisz w konsoli

Kod: Zaznacz cały

/etc/profile.d/lang.sh
i (jednorazowo, na potrzeby bieżącej sesji):

Kod: Zaznacz cały

export LC_ALL=
I będzie jak u Miny86.

EDIT:
możesz też zmienić

Kod: Zaznacz cały

export LC_COLLATE=C
na

Kod: Zaznacz cały

export LC_COLLATE="pl_PL.utf8"
i też będzie działać.
Ostatnio zmieniony 2010-01-04, 18:53 przez alekow, łącznie zmieniany 3 razy.
ODPOWIEDZ