我有一个问题。当我在 shell 中仅使用 ls
命令时,我的文件如下所示(奇怪):
[HorribleSubs] Fairy Tail - 166 [720p].mkv
[HorribleSubs] Fairy Tail - 16 [720p].mkv
[HorribleSubs] Fairy Tail - 167 [720p].mkv
当我打开我的文件夹时,文件会像这样列出(首选):
[HorribleSubs] Fairy Tail - 16 [720p].mkv
...
...
[HorribleSubs] Fairy Tail - 166 [720p].mkv
[HorribleSubs] Fairy Tail - 167 [720p].mkv
如何使用 ls
命令列出 shell 中与相应文件夹中的文件完全相同的文件。在文件夹中,它按“按名称”排序。
当我键入 ls -v
时,列表如下:
[HorribleSubs] Fairy Tail - 11 [720p].mkv
[HorribleSubs] Fairy Tail - 12 [720p].mkv
[HorribleSubs] Fairy Tail - 13 [720p].mkv
...
...
[HorribleSubs] Fairy Tail - 175 [720p].mkv
[Horriblesubs] Fairy Tail - 01 [720p].mkv
[Horriblesubs] Fairy Tail - 02 [720p].mkv
[Horriblesubs] Fairy Tail - 03 [720p].mkv
[Horriblesubs] Fairy Tail - 04 [720p].mkv
[Horriblesubs] Fairy Tail - 05 [720p].mkv
[Horriblesubs] Fairy Tail - 06 [720p].mkv
[Horriblesubs] Fairy Tail - 07 [720p].mkv
[Horriblesubs] Fairy Tail - 08 [720p].mkv
[Horriblesubs] Fairy Tail - 09 [720p].mkv
[Horriblesubs] Fairy Tail - 10 [720p].mkv
最佳答案
使用排序实用程序,用户还可以选择指定用于排序的起始列。所以这个命令:
ls | sort -k 1.5n
将使用 1st
列和从 5th
字段开始排序。假设您的文件都以单词 file
开头,这应该使用该单词后面的数字按自然顺序排序
输出:
file01.txt
file11.txt
file16.txt
file116.txt
file167.txt
对于你的新案例(妖精的尾部 - # [720p].mkv...),试试这个命令:
ls | sort -k4n
关于linux - 如何使用 `ls` 在 linux shell 中列出文件,因为它们在相应的文件夹中列出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21048430/