Sortieren Sie die Dateien numerisch in der bash

Ich muss Sortieren .flv-Dateien werden numerisch und ich war in der Lage, es zu tun mit dem folgenden Befehl:

ls *\.flv | sort --version-sort -f

aber mit vielen Dateien(Hunderte) es ist nicht richtig einsortiert.

ls *\.flv | sort --version-sort -f | tail -n 20
e680.flv
e681.flv
e682.flv
e683.flv
e684.flv
e685.flv
e686.flv
e687.flv
e688.flv
e689.flv
e690.flv
e691.flv
e692.flv
e693.flv
e694.flv
e695.flv
**e696.flv**
s572.flv
s602.flv
s654.flv

aber das merkwürdige ist dies, wenn ich mich ruinieren Sie den Befehl ohne "*.flv" es funktioniert.
die ich verwenden könnte, nur ls, aber ich habe andere Dateitypen in den Ordner.

ls | sort --version-sort -f | tail -n 20
e680.flv
e681.flv
e682.flv
e683.flv
e684.flv
e685.flv
e686.flv
e687.flv
e688.flv
e689.flv
e690.flv
e691.flv
e692.flv
e693.flv
e694.flv
e695.flv
e696.flv

was ich bisher ausprobiert habe:

    ls | sort --version-sort -f | grep "flv"
    ls *.flv | sort --version-sort -f
    ls *\.flv | sort --version-sort -f
    ls *.flv | sort -f
was ist das problem? e696.flv ist an der richtigen Stelle, richtig?
haben Sie nicht versucht, führen Sie einfach "ls *.flv | sort-f | tail-n 20 "
es würde nicht funktionieren mit dem ändern der Anzahl der Ziffern in den Dateinamen
ls *.flv | sort-f überspringt Dateien... die ich verwenden könnte, nur ls, aber ich habe andere Dateitypen in den Ordner.

InformationsquelleAutor Crazy_Bash | 2012-11-13

Schreibe einen Kommentar