カンマ区切りのファイルがあります。
# cat data
smartplayer,2222,off
smartplayer,1111,on
scorer,0000,
$1でsmartplayerを検索し、$3からステータスを取得して、次のように印刷したいと思います。
off-smart-player 2222
on-smart-player 1111
scorer 0000
このコマンドを実行しましたが、次のように印刷されます。
# awk '{ if ($1 == smartplayer ) {print $3"-smart-player", $2}}' data
-smart-player
-smart-player
答え1
フィールド区切り文字を指定する必要があります。
awk -F, '$1=="smartplayer"{ print $3"-smart-player", $2; next }
{ $1=$1; print }' data
答え2
$ awk -F, '$1=="smartplayer"{$1=$3"-smart-player"} {print $1, $2}' data
off-smart-player 2222
on-smart-player 1111
scorer 0000