2012-09-17 31 views
16

テキストファイルの各行の末尾に文字「A」を追加します。どのように私はawkでこれを行うことができますか?awkで各行の末尾に文字を追加するには?

1AAB 
VBNM 
JHTF 
2SDA 

所望の出力

1AABA 
VBNMA 
JHTFA 
2SDAA 
+1

ために仕事をすることがありますが、SEDとかなり簡単にこれを行うことができます - 'sedの-iさん/ $/A/' file.txt' – squiguy

答えて

22

これはあなた

awk '{print $0"A"}' yourFile 
+1

文字をハードコードしたくない場合は、awkに渡すことができます: 'awk -v char = A '{print $ 0 char}' file' –

+0

この '' {print $ 0 "A"} ''はそれぞれの' $ 0 '何らかの理由で。これは私を困惑させた。何とか '$ 0'の後に' \ n \ r'が挿入されています。私はこの問題を 'tr'を使って解決しました。このようなもの './script.awk -F $ '\ t' file.tsv | TR "\ n個の\ rは" "" 'あなたは – Matthias

+2

ここにいくつかの奇妙な結果を得るために働くかもしれない: は' awkは '{$ 0 "A" を印刷}' VBNMA JHTFA 2SDAA' ---- '1AABA をyourFile' 期待どおりです。ただし、 awk '{print $ 0 "A"}' foo.txt' 各行の先頭に「A」を挿入します。 'Aser_id、count_seen A、44 A、18603 A、87452 A、16572 – alexplanation

関連する問題