Bash 按特定顺序列出/处理文件

Bash 按特定顺序列出/处理文件
#! bash

我尝试了在谷歌上看到的一些方法,但似乎没有什么作用。

我不认为这会是一个很大的挑战,但也许这根本不可能?

我有一个文件夹名称中的文件列表

01_one.txt
02_two.txt
03_three.txt
....

我需要一个 bash 命令/脚本 for-each 循环来按照隐含的顺序处理文件(1, 2, 3, ...就像手动处理一样)

mycmd 01_one.txt
mycmd 02_two.txt
mycmd 03_three.txt
...

这是 rhel 7.4

答案1

bash 通配符将返回以下文件名:词汇(即字母)顺序。只要前导数字用零填充,就可以这样做:

for file in *; do
    mycmd "$file"
done

相关内容