【发布时间】:2015-09-24 15:57:47
【问题描述】:
我正在尝试在 awk 命令中打印日期。我找不到解决 gawk 的参数放在单引号内这一事实的方法,这否定了我需要 date 的执行:
gawk '/.*(ge|ga).*/ { print $1 "," $2 "," date } ' >> file.csv
gawk '/.*(ge|ga).*/ { print $1 "," $2 "," echo date } ' >> file.csv
gawk '/.*(ge|ga).*/ { print $1 "," $2 "," `date` } ' >> file.csv
在 gawk 命令中有什么办法解决这个问题?谢谢。
【问题讨论】:
-
gawk 有自己的日期函数,
stftime。虽然如果你真的想使用日期然后使用system(date)或date | getline -
@User112638726
system(date)将不起作用,因为它返回日期的退出状态。 -
@Rakholiya 它返回退出状态,但它也输出执行命令的结果。
-
@Rakholiya 而不是你应该这样做
{system("date")} -
@User112638726,可能,只是有点乱:
printf "%s,%s,", $1, $2; system("date")