This question already has answers here:
How do I use shell variables in an awk script?
(7个答案)
三年前关闭。
我想在存储在变量中的文本文件的每一行末尾添加一个单词。每当我执行shell脚本而不是连接存储在变量本身中的内容时,就会得到连接。下面是相同的示例:
输入:
cat output2.txt

12345

att1=Ramesh^Mumbai

awk '{print $0"^$att1"}' output2.txt >output3.txt

输出:
12345^att1

期望输出:
12345^Ramesh^Mumbai

最佳答案

试试这个:

awk -v att1='Ramesh^Mumbai' -v OFS='^' '{print $0,att1}'

-v选项允许将变量传递给awk
OFS是输出字段分隔符(它将用,替换print语句中的^

09-27 23:25