如何用变量 0 数字作为第一个字符来执行增量 bash shell

如何用变量 0 数字作为第一个字符来执行增量 bash shell

如何执行以 0 作为增量第一个字符的增量的 bash shell,例如:

for (( c=1; c<=75; c++ )) ; do echo 0$c ; done ;

给了我:

.../...
07
08
09
010
011
.../...

我的问题是,第一个数字 9 会变成双 00,因此我希望得到以下结果:

.../...
007
008
009
010
011
.../...

答案1

尽管阿卡迪乌什·德拉布奇克的答案根据需要格式化输出,还有另一种方法:-

for c in {01..75}; do echo $c; done;   # for two digits
for c in {001..075}; do echo $c; done; # for three digits

这包括在指定的值中前导零c,而不是在输出时添加它们,我可以想象这会更有用的情况。

答案2

printf像这样使用:

for (( c=1; c<=75; c++ )) ; do printf "%03d\n" "$c" ; done

相关内容