awkの出力時の区切り文字

awkで出力したものをexcelファイルにコピペして使いたいとき

excelに貼りつけたときにそれぞれの文字が各セルに分かれてほしいが、デフォルトだと区切り文字がスペースのためうまくいかない。なので以下のどちらかをやる。

awk '{print($1, "¥t", $2) }'

または

awk ' BEGIN { OFS = "¥t" } { print($1, $2) }'

これで区切りをタブにして出力できる

 

これで解決と思いきやこの後少しハマったのでメモ

上で書いたようにやったものの、どちらでやってもスペース区切りになってしまう状態に・・・

原因としては以下

・screenを経由した出力だとタブがスペースに変換されて出力される

なのでコピペ元の出力はscreenではないターミナルで行いましょう