如何添加前导零为环壳? [英] How to add leading zeros for for-loop in shell?
本文介绍了如何添加前导零为环壳?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有回路,它在每次迭代加1的变量num一个基本的数...
为((NUM = 1; NUM< = 5; NUM ++))
做
回声$ NUM
DONE
它输出:
1
2
3
4
五
我试图使它产生输出(加$ NUM前前导零):
01
02
03
04
05
如果没有这样做的:
0回声$ NUM
解决方案
使用的语法如下:
$因为我在{01..05};做回声$ I; DONE
01
02
03
04
05
注:前导零将猛砸4.x的工作,但是没有3.X
如果你想使用的printf
,从把它的结果为进一步使用一个变量没有prevents你:
$富=$(printf的%02D5)
$回声$ {}富
05
I have a basic number for loop which increments the variable num by 1 over each iteration...
for (( num=1; num<=5; num++ ))
do
echo $num
done
Which outputs:
1
2
3
4
5
I'm trying to make it produce the output (add leading zero before $num):
01
02
03
04
05
Without doing:
echo 0$num
解决方案
Use the following syntax:
$ for i in {01..05}; do echo "$i"; done
01
02
03
04
05
Note: The leading zeros will work in Bash 4.x, however not in 3.x.
If you want to use printf
, nothing prevents you from putting its result in a variable for further use:
$ foo="$(printf "%02d" 5)"
$ echo "${foo}"
05
这篇关于如何添加前导零为环壳?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文