我在這個形式的輸入文件:AWK:打印一切,但不是最後的第n列
foo bar 08 320984 2384
bla foo baz 23 32425 32532
[...]
總有三個令牌到底,但在前面的令牌數量不詳。我想將文件重寫爲CSV,以便可以由其他應用程序自動分析。我目前的awk命令是:
awk '{ print $(NF-2)";"$(NF-1)";"$NF}'
輸出應該是
foo bar;08;320984;2384
bla foo baz;23;32425;32532
[...]
這不是'CSV'但是這不是點。您正試圖將您的文件分成四個輸出字段?最後三個字段是輸入的最後三個字段,第一個字段是行中的其他所有字段? – 2014-11-04 21:46:21
你怎麼知道什麼是標記?任何文字沒有數字?你在一行中有兩個單詞,在另一個單詞中有三個單詞。 – Jotne 2014-11-04 22:15:53
@Jotne從句子中「最後總是有三個令牌,但前面有一個未知數的令牌」我明白它總是像'tk1 tk2 tk3 ...tkn TK1 TK2 TK3'並且必須變成'tk1 tk2 tk3 ... tkn; TK1; TK2; TK3'。 – fedorqui 2014-11-05 09:00:58