Bash / Linux Sortuj według 3. kolumny przy użyciu niestandardowego separatora pól
Nie mogę sortować następujących danych tak, jak bym chciał;
find output/ -type f -name *.raw | sort
output/rtp.0.0.raw
output/rtp.0.10.raw
output/rtp.0.11.raw
output/rtp.0.12.raw
output/rtp.0.13.raw
output/rtp.0.14.raw
output/rtp.0.15.raw
output/rtp.0.16.raw
output/rtp.0.17.raw
output/rtp.0.18.raw
output/rtp.0.19.raw
output/rtp.0.1.raw
output/rtp.0.20.raw
output/rtp.0.2.raw
output/rtp.0.3.raw
output/rtp.0.4.raw
output/rtp.0.5.raw
output/rtp.0.6.raw
output/rtp.0.7.raw
output/rtp.0.8.raw
output/rtp.0.9.raw
W powyższym przykładzie nie przekazałem żadnych argumentów dosort
dowództwo. Bez względu na to, jakich opcji użyłem, nie mogę zbliżyć się do pożądanych rezultatów. Chciałbym następujący wynik;
find output/ -type f -name *.raw | sort
output/rtp.0.0.raw
output/rtp.0.1.raw
output/rtp.0.2.raw
output/rtp.0.3.raw
output/rtp.0.4.raw
output/rtp.0.5.raw
output/rtp.0.6.raw
output/rtp.0.7.raw
output/rtp.0.8.raw
output/rtp.0.9.raw
output/rtp.0.10.raw
output/rtp.0.11.raw
output/rtp.0.12.raw
output/rtp.0.13.raw
output/rtp.0.14.raw
output/rtp.0.15.raw
output/rtp.0.16.raw
output/rtp.0.17.raw
output/rtp.0.18.raw
output/rtp.0.19.raw
output/rtp.0.20.raw
Próbowałem z-t .
opcja, aby ustawić separator pola na pełną kropkę. Również eksperymentowałem z-k
opcja określenia pola i-g
, -h
, -n
, ale żadna z opcji nie pomaga. Nie widzę niczego innego na stronach podręcznika, które robiłbym tak, jak tego potrzebuję, chyba że nie zrozumiałem poprawnie stron podręcznika i nie przeoczyłem mojej odpowiedzi.
Czy mogę uzyskać wymagane wynikisort
, a jeśli tak, to w jaki sposób?
Dodatkowo, jest on rzadki, ale czasami druga kolumna, która pokazuje „0” w dół, może się zwiększyć. Czy można to uwzględnić w tym rodzaju?