我必须将一个月中的第几天从 1 到 9 替换为 01 到 09。我是根据以下代码完成的
echo "1"|awk '{gsub('1',"01")}1'
echo "2"|awk '{gsub('2',"02")}1'
但现在所有其他日子,如 10,11 都被替换为 010 、 011 请指导我如何编写它,以便只有个位数的天数以 0 为前缀。谢谢
最佳答案
不是gsub()
,printf
就是你要找的函数,看例子:
kent$ seq 12|awk '{printf "%02d\n", $0}'
01
02
03
04
05
06
07
08
09
10
11
12
关于linux - AWK - 无法替换值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46055461/