更改列的格式

更改列的格式

我在输入文件中有一个具有以下格式的列

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

您必须转义 awk 中的双引号。类似的东西可以完成工作

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

答案2

并在 Awk 命令中使用printf而不是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

&是整个匹配的文本。

相关内容