下記のスクリプトで、日付が一致して、最後の文字列もAAだけのもを取り出したいのですが、
なぜか間違った結果(BBCをAAとして出力)を出します。
正しい抽出方法を教えてください。
どうぞよろしくお願いいたします。
<スクリプト>
#!/bin/bash
date=20220101
date_e=20220129
until [[ $date > ${date_e} ]]; do
awk -F'[ :/,"]+' '(sprintf("%04d%02d%02d", $1, $2, $3) == date && $6="AA"){print $1,$2,$3,$6}' date="$date" input.csv
date=$(date -d "$date + 1 day" '+%Y%m%d')
done
<入力ファイル>
Date,x,y,Type
2022/1/19,22.3,33.4,AA
2022/1/3,39.0,33.235,BBC
<出力結果>
2022 1 3 AA
2022 1 19 AA
<期待している出力結果>
2022 1 19 AA

回答1件
あなたの回答
tips
プレビュー