我的文件夹中有200个文件,我想按名称排序。这是我的文件的简短列表,根据我的Linux计算机默认排序的方式。
Name at 0.2142.png
Name at 0.4284.png
Name at 0.04284.png
Name at 0.6426.png
Name at 0.8568.png
Name at 0.08568.png
...
我想通过名字从最低到最高来诉诸他们,所以我的名单将成为
Name at 0.04284.png
Name at 0.08568.png
...
Name at 0.2142.png
Name at 0.4284.png
Name at 0.8568.png
...
(我把elipses放在我的列表中间,因为在名称为0.08568.png和名称为0.2142.png之间有更多文件。)
我还是刚开始写bash文件,但我想我可以写一个来分类我的数据。
由于
附录:
由于文件名太长,我将它们缩写为名称... 实际文件名为行星涡度在t = 时由径向速度倾斜,末尾有一个数字。我希望你能理解为什么我没有把它放在原来的问题中。我也很确定我在下面的评论中说过我是Linux和Ubuntu的新手,我不知道文件列表是如何创建的。我有一个MatLab代码,它根据我的CFD数据生成png文件,其中包含我在上面提供的名称和相应的时间步骤。当我在Linux计算机上打开文件夹时,文件会按照我上面列出的方式自动排序,我不明白为什么。
如果还有其他需要澄清的话,我很乐意把它放在这里。
答案 0 :(得分:1)
假设:
$ echo "$files"
Name at 0.2142.png
Name at 0.4284.png
Name at 0.04284.png
Name at 0.6426.png
Name at 0.8568.png
Name at 0.08568.png
Name at 1.11.png
你可以这样做:
$ echo "$files" | sort -t. -k1
Name at 0.04284.png
Name at 0.08568.png
Name at 0.2142.png
Name at 0.4284.png
Name at 0.6426.png
Name at 0.8568.png
Name at 1.11.png
假设前缀Name at
在所有情况下都相同。