現在CentOSを学んでいますが、可能であれば助けが必要です。ユーザーアカウントの作成に使用するUserNameList.lstファイルがあります。ファイルの内容は次のとおりです。
Josh, Adams, [email protected]
Henry, Ford, [email protected]
以下のようにtxtファイルを出力する必要があります。 (基本的に2列と1列を1列にマージ)
Adams Josh
Ford Henry
私はコマンドを使ってみました。
cut -d "," -f 1 >> Last.txt
cut -d "," -f 2 >> First.txt
paste First.txt Last.txt >> full
どの出力
Adams Josh
Ford Henry
これを行うより簡単な方法はありますか?
答え1
これは次に最適です。awk
$ cat ip.txt
Josh, Adams, [email protected]
Henry, Ford, [email protected]
$ awk -F"[ ,]+" '{print $2, $1}' ip.txt
Adams Josh
Ford Henry
-F"[ ,]+"
フィールド区切り文字は、,
スペースと文字の1つ以上です。- 次に、2番目の列と1番目の列を印刷します。