列形式の変更

列形式の変更

入力ファイルには次の形式の列があります。

H6
H7
O4
C4
H8
H9
O5
C5
H10
H11

出力に次の形式を持たせたい

"a H6"
"a H7"
"a O4"
"a C4"
"a H8"
"a H9"
"a O5"
"a C5"
"a H10"
"a H11"

これまで私は試しましたawk '{print "a "$1""}' filein > fileout

ただし、1つの列が欠落しているため、出力は望ましくありません" "

答え1

awkでは二重引用符をエスケープする必要があります。このようなことが作業を完了します。

awk '{print "\"a "$1 "\" "}' filein > fileout

答え2

1行で出力するprintf代わりにAwkコマンドに使用されます。print

awk '{printf "\"a "$1"\" "}' inputFile > outputFile

答え3

私はこれを使用したいと思いますsed

sed 's/^/"a /; s/$/"/' infile > outfile

これで以下が生成されます。

$ sed 's/^/"a /; s/$/"/' infile 
"a H6"
"a H7"
"a O4"
"a C4"
"a H8"
"a H9"
"a O5"
"a C5"
"a H10"
"a H11"

答え4

sed 's/.*/"a &"/' data

&一致するフルテキストです。

関連情報