linux - AWK - 无法替换值

标签 linux shell awk

我必须将一个月中的第几天从 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/

相关文章:

linux - SSD的“典型”延迟意味着什么?

c++ - 打开一个Shell程序,传递参数,返回结果

c - 如何强制读取通过

python - 使用 python 文件中的自定义 shell 命令

Linux Shell - 用文件中的其他字符串替换字符串

linux - 跳过前 N 行并打印文件的其余部分,假设文件中间存在​​文件损坏

regex - sed 用下划线替换 2 个字符串之间的空格

linux - shell脚本中if else语句中的多个语句

python - Pylons Web 应用程序的最小 Linux?

bash - awk 系统调用