linux shell字符串填充,在字符串前面加0

在一些批量操作中,往往需要对字符串进行填充,也就是在字符串的前面加上一堆的0,以使批量操作中所有字符串格式相同。

例如有100个文件要批量wget下来,而文件名是有规则的,从00 01 02 03 到 99。

如果单纯用 seq 出来的结果是 0 1 2 3 到 99 这样的,很明显,在小于10的数字中不合要求。

如何在一个for中完成这100个文件的下载呢,这就需要字符串填充,并且是有位数要求的填充,如果小于10才在字符串的前面加0。

有一个很强大的命令printf可以完成这个操作。

命令:

i=1

printf %02d $i

将会输出01,同时如果i=10也只会输出10。

2011年09月17日