x=3
A=`echo $A|awk '{print $x}'`
echo $A
不打印3.如何使用带有awk *
的变量答案 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
的复杂而昂贵的方式: - )