#navi(../)

* awkの区切り文字をカンマに変更する [#p059224f]
#contents

シェルスクリプトを書いていると区切り文字をカンマに変更して実行したい場合がありますよね。~
入力ファイルとしてCSVファイルが対象の場合とか…。
以下、awkの区切り文字をカンマ変更方法を記述します。

#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)

* カンマ区切りに変更してCSVファイルを読みこむ実行例 [#j93f79cb]
以下のようなCSVファイルを対象として以下にawkの区切り文字をカンマに変更し実行した例を記述します。
 $ cat data.csv 
 1,japan,日本,tokyo,東京
 2,america,アメリカ,washington D.C.,ワシントン
 3,china,中国,beijing,北京


** -Fオプションでカンマに変更する [#k48add2f]
 $ awk -F , '{ print $1, $3, $5; }' data.csv 
 1 日本 東京
 2 アメリカ ワシントン
 3 中国 北京

 $ awk -F , '{ print $1, $2, $4; }' data.csv 
 1 japan tokyo
 2 america washington D.C.
 3 china beijing

** フィールドセパレータ(FS)を設定しカンマ区切りに変更する [#ndb98ac9]
 $ awk 'BEGIN { FS=","; } { print $1, $3, $5; }' data.csv
 1 日本 東京
 2 アメリカ ワシントン
 3 中国 北京

 $ awk 'BEGIN { FS=","; } { print $1, $2, $4; }' data.csv
 1 japan tokyo
 2 america washington D.C.
 3 china beijing
*関連資料 [#g8203e5c]
-[[逆引きシェルスクリプト/awkの出力をカンマ区切りにする方法]]
-[[逆引きシェルスクリプト/特定のカラムを削除し表示する・awkコマンド]]
-[[指定したフィールドを取り出す・cut>逆引きUNIXコマンド/指定したフィールドを取り出す・cut]]

#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS