了解在其中传递文件内容时的 awk 命令用法


cat LIST.txt | awk 'BEGIN { print "POSTNT" ;} { print "NT Id= ""$1"" id=""$2"" "}' | abc

只是为了让大家知道:

这里$1实际上是cat LIST.txt的第一列,$2是该文件的第二列。列应以制表符分隔。 这不是一个问题,而是一个信息。

你的命令,

cat LIST.txt | awk 'BEGIN { print "POSTNT" ;} { print "NT Id= ""$1"" id=""$2"" "}' | abc

可以稍微改善为

awk 'BEGIN { print "POSTNT" } { printf("NT Id="%s" id="%s"n", $1, $2) }' <List.txt | abc

这只是摆脱了cat,并且还使用printf而不是print。 使用awk,使用print打印单独的字段,如

print "some data", $1, $2, "some other data", $4

这将打印包含五个字段的记录。 字段将由OFS的值(默认为空格(分隔,记录将由值ORS(默认为换行符(终止。

但是,在这里,您可以格式化自己的字符串以进行输出,这就是printf的用途。

最新更新