こんにちは、私のLinuxコンピュータに名前にスペースが含まれている次のファイルがあります。ls
番号順に並べる必要があります。
myfile_2020-Jul-06 00-00-00_1.csv
myfile_2020-Jul-06 00-00-00_2.csv
myfile_2020-Jul-06 00-00-00_3.csv
myfile_2020-Jul-06 00-00-00_4.csv
myfile_2020-Jul-06 00-00-00_5.csv
myfile_2020-Jul-06 00-00-00_10.csv
ls -1 - *.csv | sort -n または ls-lart _10 を試みると、ファイルは常に最初にソートされます。一番下に_10.csvがある正しい数値の順序でlsをソートしてソートするにはどうすればよいですか?
ls -1 -- *.csv | sort -n
myfile_2020-Jul-06 00-00-00_10.csv
myfile_2020-Jul-06 00-00-00_1.csv
myfile_2020-Jul-06 00-00-00_2.csv
myfile_2020-Jul-06 00-00-00_3.csv
myfile_2020-Jul-06 00-00-00_4.csv
myfile_2020-Jul-06 00-00-00_5.csv
答え1
GNU lsには次のオプションがあります。
ls -v
lsのマンページあたり:
-V テキスト内の(バージョン)番号の自然な順序