我想使用 sed 或 awk 在一行格式化文本的中间添加一个零。
输入文件示例
line 1
line 2
line 3
预期输出
line 01
line 02
line 03
最佳答案
您的问题有些含糊不清,但是使用 printf
怎么样?与 awk
用零填充第二个字段:
$ awk 'NF==2 { printf "%s %02d\n", $1, $2}' file
line 01
line 02
line 03
line 10
line 100
$ awk 'NF==2 { printf "%s %04d\n", $1, $2}' file
line 0001
line 0002
line 0003
line 0010
line 0100
如果您不想删除空行,请执行 awk 'NF==2 { printf "%s %04d\n", $1, $2} NF!=2' file
.
关于sed - 如何使用 sed 在数字前添加零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14174218/