カンマ区切りのフィールドを並べ替える

カンマ区切りのフィールドを並べ替える

Linux サーバー Centos 7 に、次の形式のエントリが多数含まれたテキスト ファイルがあります。

Test Test, 1234567890123456, a, b, cde

これを正しい形式に並べ替えたいと思います:

1234567890123456, a, b, cde, Test Test

答え1

$ awk 'BEGIN { FS = ", *"; OFS = ", " } { print $2, $3, $4, $5, $1 }' file
1234567890123456, a, b, cde, Test Test

スクリプトawkは、入力フィールド区切り文字 ( FS) をコンマとそれに続く任意の数のスペースとして定義し、出力フィールド区切り文字 ( OFS) をコンマとスペースとして定義することから始まります。

次に、入力フィールドを正しい順序で単純に出力します。

関連情報