在 bash 循环中迭代数字的异常增量步进模式

Iterating an unusual incremental stepping pattern of numbers in a bash loop

我有一些 ID 遵循这种不寻常的增量步进模式,如下所示:

eg600100.etc
eg600101.etc
eg600102.etc
...
eg600109.etc
eg600200.etc
...
eg600209.etc
eg600300.etc
...
eg600909.etc
eg601000.etc
eg601001.etc
...
eg601009.etc
eg601100.etc
...
eg601200.etc
...
eg601909.etc

据我所知,它是这样分解的:

60|01-19|00-09

我想构建一个循环,可以递增地迭代每个潜在 ID 直到范围的末尾(即 601909)。

如何将数字分成这 3 个部分以管理循环的异常步进?

我看过 seq,但我不知道如何让它接受这里的异常步进,这样它就不会给我增量之间的数字,这些数字不作为潜在 ID 存在以上。

#!/bin/bash
for id in $(seq -w 601909)
do
  echo "Testing current ID, which is eg$id.etc"
done

有什么想法吗?

尝试使用大括号扩展:

printf %s\n eg60{01..19}{00..09}.etc >file

运行 这是一个测试,但您可以迭代这样的扩展:

for id in eg60{01..19}{00..09}.etc; do echo Testing ID: $id; done