我有一个循环的基本数字,它在每次迭代时将变量num递增1 ...
for (( num=1; num<=5; num++ ))
do
echo $num
done
Run Code Online (Sandbox Code Playgroud)
哪个输出:
1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)
我正在尝试让它产生输出(在$ num之前加上前导零):
01
02
03
04
05
Run Code Online (Sandbox Code Playgroud)
没有做:
echo 0$num
Run Code Online (Sandbox Code Playgroud) 使用Bash重命名表单中文件的最佳方法是什么:
(foo1, foo2, ..., foo1300, ..., fooN)
Run Code Online (Sandbox Code Playgroud)
使用零填充文件名:
(foo00001, foo00002, ..., foo01300, ..., fooN)
Run Code Online (Sandbox Code Playgroud) 例如,我想从001到100计数.意味着零缓冲区将从2,1开始,然后在达到100或更多时最终为0.
例如:001 002 ... 010 011 ... 098 099 100
如果数字与printf"%02d"$ i有预定义数量的零,我可以这样做.但这是静态的而不是动态的,在我的例子中不起作用.
如果小于10,则尝试在变量之前添加零并创建所述目录.我似乎无法正确添加零.不断导致制作02.1.2011,02.2.2011等等,等等.
i=0
for i in {01..31}
do
if $i > 10
then
mkdir $path/02.0$i.2011
else
mkdir $path/02.$i.2011
fi
done
Run Code Online (Sandbox Code Playgroud) 我使用的程序从文本文件中获取输入,并期望处理货币的字符串被格式化为XXXX.XX
我希望能够输入数字的相关部分,并让我的脚本根据需要添加前导零和/或尾随点和零.例如,要输入1.1并将其格式化为0001.10,请输入32并将其格式化为0032.00,输入.99并将其格式化为0000.99等.
纯粹用bash做它会很好,但是像sed一样调用其他东西也会很好.
我有一个简单的文本文件,每行都包含一些随机数。我希望为数字较少的数字添加前面的零。有没有办法在命令行(UNIX)上做到这一点
输入文件:
235
25
1
963258
45
1356924
Run Code Online (Sandbox Code Playgroud)
输出文件:
0000235
0000025
0000001
0963258
0000045
1356924
Run Code Online (Sandbox Code Playgroud)