drag n drop

調べたことを書きます

文字列を分割して、特定の列のみを取得

空白で分割して2番目の列を表示(一番左が$1)
$ awk '{print $<列の数値>}'  

 

区切り文字を指定して分割して、列を取得
$ awk -F'<分割文字>' '{print $<列の数値>}'

 

複数の列を取得

$ awk '{print $<列1>, $<列2>}'

$ awk '{printf("%s %s\n", $<列1>, $<列2>)}' 

 

例:

$ echo 'a b c d' | awk '{print $2}'

b

$ echo 'a,b,c,d,e' | awk -F',' '{print $3}'

c

$ echo 'a b c d e' | awk '{print $1, $3}'

a c

$ echo 'a b c d e' | awk '{printf("%s %s\\n", $1, $3)}'

a c

 

参考: