在终端中,使用 ls 时考虑数字的值

在终端中,使用 ls 时考虑数字的值

当在 Bash 中列出目录时,我希望将数字的值考虑在内。

目前这是我得到的输出:

$ ls 
test_1.txt  
test_11.txt 
test_12.txt 
test_2.txt  
test_3.txt

如您所见,ls没有将 11 和 12 的值考虑在内,并将其列在 2 之前,尽管它们是更大的数字。有没有办法让输出变成这样:

$ ls 
test_1.txt  
test_2.txt  
test_3.txt
test_11.txt 
test_12.txt

我查看了手册页,什么也没找到。有什么想法吗?

答案1

在 GNU coreutils 中lsls -v(版本排序)选项应该可以做到。

否则,你必须通过管道输出sort -n或者sort -V

相关内容