Linux / bashの1行のコードは複雑な文を印刷します。

Linux / bashの1行のコードは複雑な文を印刷します。

2つのデータ列を持つファイルがあります。

kevin n1

edwin n2

mevin n3

私はこのような宣言を生成したいと思います。

--This is kevin and his 'roll number' is n1

--This is edwin and his 'roll number' is n2

--This is mewin and his 'roll number' is n3

これでこの操作を実行することはできませんawk。ステートメントの途中でダッシュ "--" や一重引用符 (') を使用しません。

上記のような出力が欲しいですか?

ベストアンサー1

awkを使用してください:

awk 'NF{print "--This is " $1 " and his \047roll number\047 is " $2 }' file

\047一重引用符の 8 進コードです'

別のオプションは、一重引用符文字を含む変数を定義することです。

awk -v sq="'" 'NF{print "--This is " $1 " and his "sq"roll number"sq" is " $2 }' file

おすすめ記事