您好,我在 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 文件始终先排序。如何 ls 并以正确的数字顺序对它们进行排序,_10.csv 在底部?
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 文本中(版本)数字的自然排序