AWKまたはSEDを使用してリストに文字列を追加しますか?

AWKまたはSEDを使用してリストに文字列を追加しますか?

こんにちは。 AWKまたはSEDを使用して名前のリストを編集したいです。

入力リストファイルの例:

john
paul
rose
lily

希望の出力:

I am john of earth;
I am paul of earth;
I am rose of earth;
I am lily of earth;

私も最後にセミコロンが欲しいです。シェルスクリプトでforループを使用したくありません。

答え1

あなたと一緒にawk使用することができますprint

awk '{ print "I am", $1, "of earth;" }' list

またはprintf:

awk '{ printf("I am %s of earth;\n", $1); }' list

答え2

使用sed:

$ sed 's/.*/I am & of earth;/' file.txt 
I am john of earth;
I am paul of earth;
I am rose of earth;
I am lily of earth;

関連情報