2

日付変数を入れる必要があるこの awk コマンドがあります。どこかで構文が欠落していると確信しています。専門家が私を助けてくれますか? 基本的に、スクリプトの実行時期に応じて日付を変更する必要があります。

date=$(date --date="1 month ago" +"%d-%b-%Y")
wget -qO - http://*********/users.csv > users
awk      'NR==1          {print "Primary Comments,Customer Account Number,Transaction Date,Service Description,Quantity,Unit,Price,Service Category,PI\x27sName,Purchaser\x27s Last Name,Short Contributing Center Name,Resource Name,Line Item Assistant,Line Item Comments"}
          FNR==NR        {S[$1]=$2; P[$1]=$3; next}
          $1 in S        {print "Bruker 500 NMR",P[$1],date,"500 MHz",$2/60,"Hour","5","500 MHz",S[$1],$1,"","501 NMR","","" }
          ' FS="," OFS="," OFMT="%.2f" $date users FS=" " wtmp > billing-$inst-$date.csv
4

1 に答える 1

5

-vオプションを使用してください。

awk -v date="$date" ....

しかし、GNU awk ( gawk) には独自の時間関数があり、ここに文書化されています: http://www.gnu.org/software/gawk/manual/html_node/Time-Functions.html

于 2013-08-09T15:52:14.477 に答える