使用带变量的awk

时间:2011-06-16 14:16:13

标签: shell awk

x=3
A=`echo $A|awk '{print $x}'`
echo $A

不打印3.如何使用带有awk *

的变量

3 个答案:

答案 0 :(得分:10)

使用awk标记将变量传递给-v

x=3
A=`echo $A|awk -v y=$x '{print y}'`
echo $A

答案 1 :(得分:3)

您可以通过以下方式使用shell的变量:"'$your-shell-variable'"'$your-shell-variable'。前者将变量视为字符串,而后者则将其视为数字。以下是您想要的代码:

x=3    
A=`echo $A|awk '{print "'$x'"}'`    
echo $A

答案 2 :(得分:1)

呃,回应$A的重点是什么?它只是创造了一个无用的叉子和管道。

x=3
A=`awk -v y=$x 'BEGIN {print y}'`
echo $A

虽然我很喜欢,但这似乎是一种写作A=$x的复杂而昂贵的方式: - )