按特定顺序对文件进行排序
Sort files with specific order
我有这样的文件
file_fooX_barY_tests.txt
首先在 'foo' 上循环然后查看 'bar' 之后的数字后,我如何才能增量列出它们?即
file_foo100_bar1_test.txt
file_foo100_bar100_test.txt
file_foo100_bar150_test.txt
file_foo200_bar1_test.txt
file_foo200_bar100_test.txt
file_foo200_bar250_test.txt
做一个标准的 ls,例如列表
file_foo100_bar100_test.txt
file_foo100_bar150_test.txt
file_foo100_bar1_test.txt
所以,'bar100' 和 'bar150' 排在 'bar1'
之前
谢谢
我认为 sort -V
可以解决问题。它意味着按 "version order".
排序
Example :
$ echo """file_foo100_bar150_test.txt
file_foo100_bar1_test.txt
file_foo200_bar250_test.txt
file_foo200_bar100_test.txt
file_foo200_bar1_test.txt
file_foo100_bar100_test.txt
""" | sort -V
file_foo100_bar1_test.txt
file_foo100_bar100_test.txt
file_foo100_bar150_test.txt
file_foo200_bar1_test.txt
file_foo200_bar100_test.txt
file_foo200_bar250_test.txt
我有这样的文件
file_fooX_barY_tests.txt
首先在 'foo' 上循环然后查看 'bar' 之后的数字后,我如何才能增量列出它们?即
file_foo100_bar1_test.txt
file_foo100_bar100_test.txt
file_foo100_bar150_test.txt
file_foo200_bar1_test.txt
file_foo200_bar100_test.txt
file_foo200_bar250_test.txt
做一个标准的 ls,例如列表
file_foo100_bar100_test.txt
file_foo100_bar150_test.txt
file_foo100_bar1_test.txt
所以,'bar100' 和 'bar150' 排在 'bar1'
之前谢谢
我认为 sort -V
可以解决问题。它意味着按 "version order".
Example :
$ echo """file_foo100_bar150_test.txt file_foo100_bar1_test.txt file_foo200_bar250_test.txt file_foo200_bar100_test.txt file_foo200_bar1_test.txt file_foo100_bar100_test.txt """ | sort -V file_foo100_bar1_test.txt file_foo100_bar100_test.txt file_foo100_bar150_test.txt file_foo200_bar1_test.txt file_foo200_bar100_test.txt file_foo200_bar250_test.txt