Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在头记录中插入linux中带有awk的日期,_Linux_Awk - Fatal编程技术网

如何在头记录中插入linux中带有awk的日期,

如何在头记录中插入linux中带有awk的日期,,linux,awk,Linux,Awk,我试图在文件的标题记录中插入当前日期和当前月底日期,如下所示: "ABCDEF MC 20201006 FB XXX1 20201006 20201031" 我尝试了以下方法,只是尝试更改一个日期-最后两个日期我现在硬编码: awk 'BEGIN{print "ABCDEF MC ""d=$(date)"&qu

我试图在文件的标题记录中插入当前日期和当前月底日期,如下所示:

"ABCDEF            MC             20201006      FB   XXX1           20201006 20201031"
我尝试了以下方法,只是尝试更改一个日期-最后两个日期我现在硬编码:

awk 'BEGIN{print "ABCDEF            MC             ""d=$(date)""      FB   XXX1           ""20201005"" ""20201031"}1' tmp.txt >> tmpH.txt
所需的输出应如下所示:


“ABCDEF MC 20201006 FB XXX1 20201006 20201031”

一种可能的方法是使用bash计算日期,并从awk中检索作为变量的值:

echo "test" | awk -v today="$(date +%Y%m%d)" -v last_day="$(date +"%Y%m%d" -d "$(date +%Y-%m-01) +1 month -1 day")" 'BEGIN { print "ABCDEF MC " today " FB XXX1 " today, last_day }'

结果:

ABCDEF MC 20201006 FB XXX1 20201006 20201031 ABCDEF MC 20201006 FB XXX1 20201006 20201031
要获取当前月份的最后一天,我们将当前日期格式化为%Y-%m-01=2020-10-01,然后加上1个月,减去1天。

请将该示例输入的所需输出(无说明)添加到您的问题中(无评论)。