teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

コメントでの指摘を受け、最初に提示したコマンドでは正しく動作しない環境において、対処をしたコマンドを追記。

2019/12/18 03:09

投稿

hidezzz
hidezzz

スコア1248

answer CHANGED
@@ -8,4 +8,12 @@
8
8
 
9
9
  ```
10
10
  cat ./51610004_20190401.csv | awk 'BEGIN {FS=",";OFS=","} {pos=$3;dat=$8;NF=2;NF=9;$pos=dat;print $0}' > ./output.csv
11
+ ```
12
+
13
+ ※以下コメントでのご指摘を受けて追記
14
+
15
+ 「NF=2」とした場合にフィールドのクリアをしないawk実装があるようです。
16
+ 代わりにforループでのクリアに置き換えると次のようになります。
17
+ ```
18
+ cat ./51610004_20190401.csv | awk 'BEGIN {FS=",";OFS=","} {pos=$3;dat=$8;NF=9;for(i=3;i<=9;++i){$i=""};$pos=dat;print $0}' > ./output.csv
11
19
  ```