AWK—在';开始';至';日期';?

AWK—在';开始';至';日期';?,awk,Awk,请解决这个问题 我想将“开始”中的变量(a=“echo 2012-03-16”)分配给命令“日期”。获取并打印“$0”的“日期” 下面是一个例子: awk 'BEGIN {a="echo 2012-03-16"; "date +%s -d "$a" " | getline; print $0}' 谢谢你的帮助。 您可以直接在awk中引用变量a,不需要$ date+%s-d2012-03-16已发送到shell,不需要使用echo 谢谢你的回答,但不是重点。我想在变量“a=”2010-03-

请解决这个问题

我想将“开始”中的变量(a=“echo 2012-03-16”)分配给命令“日期”。获取并打印“$0”的“日期”

下面是一个例子:

awk 'BEGIN {a="echo 2012-03-16"; "date +%s -d "$a" " | getline; print $0}'
谢谢你的帮助。

  • 您可以直接在
    awk
    中引用变量
    a
    ,不需要
    $
  • date+%s-d2012-03-16
    已发送到shell,不需要使用
    echo


谢谢你的回答,但不是重点。我想在变量“a=”2010-03-29“中插入日期。日期+%s-d 2010-03-29-->1269813600用这种方式打印当前日期。awk'BEGIN{a=“2010-03-29”;“date+%s-da”| getline;print$0}-->1331859600Kev的答案在我看来是正确的。如果您编辑您的问题以包含所需的输出,您将帮助自己获得更快更好的答案。您是说您的shell环境中有一个var“${a}”?祝你好运,抱歉弄错了。这是一件好事,他们只是不会在Ubuntu 10.10上工作。#####$awk'BEGIN{a=“2010-03-29”,“date+%s-d”a | getline;print$0}'>/bin/sh:2010-03-29:找不到####Ubuntu 10.04运行良好。pc:~$awk'开始{a=“2010-03-29”,“日期+%s-d”a| getline;打印$0}'->1269813600###感谢您的帮助。
$ awk 'BEGIN {a="2012-03-16"; "date +%s -d "a | getline; print $0}'