[bash]sortowanie plików z indexami

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
overprophet
Piegowaty Guziec
Piegowaty Guziec
Posty: 21
Rejestracja: 22 gru 2008, 19:49
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86_64

[bash]sortowanie plików z indexami

Post autor: overprophet »

Kod: Zaznacz cały

StatMatW11.pdf   StatMatW13.pdf  StatMatW15.pdf  statmatw2.pdf  statmatw4.pdf  statmatw6.pdf  statmatw8.pdf
statmatw10.pdf      StatMatW12.pdf  StatMatW14.pdf  statmatw1.pdf   statmatw3.pdf  statmatw5.pdf  statmatw7.pdf  statmatw9.pdf
mam takie pliki i chcę żeby były posortowane względem indexów rosnąco - pewnie to jest proste ale nie mam pomysłu
i jak sortować leksykograficznie (antylexykograficznie) względem ASCII?
Awatar użytkownika
beluosus
Zakręcona Traszka
Zakręcona Traszka
Posty: 695
Rejestracja: 01 paź 2006, 15:32
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86
Kontakt:

Re: [bash]sortowanie plików z indexami

Post autor: beluosus »

Nie mam pomysłu na proste rozwiązanie, póki co łap to:

Kod: Zaznacz cały

ls | sed 's/\([0-9]\+\)/*\1*/' | sort -k2 -nt* | tr -d '*'
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: [bash]sortowanie plików z indexami

Post autor: kampo »

Nie prościej tak?:)
kampo@kroliczek:~/Pulpit/test$ ls | sed 's/\([0-9]\+\)/*\1*/' | sort -k2 -nt* | tr -d '*'
statw1.txt
statw2.txt
Statw3.txt
statw4.txt
statW5.tzt
StatW6.txt
kampo@kroliczek:~/Pulpit/test$ ls | sort
statw1.txt
statw2.txt
Statw3.txt
statw4.txt
statW5.tzt
StatW6.txt
Awatar użytkownika
beluosus
Zakręcona Traszka
Zakręcona Traszka
Posty: 695
Rejestracja: 01 paź 2006, 15:32
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86
Kontakt:

Re: [bash]sortowanie plików z indexami

Post autor: beluosus »

kampo pisze:Nie prościej tak?:)
Prościej ale niepoprawnie dla plików z indeksami o różnej ilości cyfr. Poza tym ls domyślnie sortuje listę więc 'sort' jest zbędny.
overprophet
Piegowaty Guziec
Piegowaty Guziec
Posty: 21
Rejestracja: 22 gru 2008, 19:49
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86_64

Re: [bash]sortowanie plików z indexami

Post autor: overprophet »

@kampo
to to robi to bez łaski....

generalnie to żeby dla plików

Kod: Zaznacz cały

s12.pdf s1.pdf s2.pdf 
sortowanie dało wynik

Kod: Zaznacz cały

s1.pdf
s2.pdf
s12.pdf
to jest meritum mojego pytania

oczywiście beluosus podał dobre rozwiązanie natomiast czy nie da się prościej? nie żebym wybrzydzał :D
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [bash]sortowanie plików z indexami

Post autor: ethanak »

U mnie na coreutils 8.10:

Kod: Zaznacz cały

sort -Vf
Starsze wersje (miałem w wersji 8.5) miały błąd - ignorowały 'f' jeśli podane było 'V'.
Jeszcze starsze nie mają opcji V.
overprophet
Piegowaty Guziec
Piegowaty Guziec
Posty: 21
Rejestracja: 22 gru 2008, 19:49
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86_64

Re: [bash]sortowanie plików z indexami

Post autor: overprophet »

ja mam coreutils 7.4 ...
jak otwieram sinaptica (ubuntu 10.04) to w repo widzę tylko dostępną wersje 7.4 - można instalować coreutils8.12 bez przeszkód czy lepiej nie? i jeżeli nie to dlaczego
bo nie wiem czemu w repo tego nie dali a nie lubię eksperymentować wiec nie instaluje
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 2 gości