sedやawkを使ってテキストから必要な列のみ取得する
以下のような文字列(ファイルに保存されているとする)からsedやawkを使ってlabelだけとるshell芸を紹介します。
1 | +-------------------------+-------+ |
label列のみ取得
1 | ⇒ sed -n '4,14p' table.txt | awk '{print $2}' |
スペース区切りに加工する
1 | ⇒ sed -n '4,14p' table.txt | awk '{print $2 " "}' | tr -d '\n' |
sed -n '4,14p’
で指定した行数のみ取得しています
次にawk '{print $2}’
でlabel列のみ抽出しています。
改行を消すのは tr -d '\n’
が便利です。