如何在awk腳本中使用shell變量?我找到了一些辦法通過外殼變量的awk腳本,但我感到困惑'和"。首先,我嘗試使用shell腳本:$ v=123test$ echo $v123test$ echo "$v"123test然后嘗試了awk:$ awk 'BEGIN{print "'$v'"}'$ 123test$ awk 'BEGIN{print '"$v"'}'$ 123為什么有區(qū)別?最后我試過這個(gè):$ awk 'BEGIN{print " '$v' "}'$ 123test$ awk 'BEGIN{print ' "$v" '}'awk: cmd. line:1: BEGIN{print
awk: cmd. line:1: ^ unexpected newline or end of string我對(duì)此感到困惑。
4 回答

守著星空守著你
TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超8個(gè)贊
您可以使用變量name()和環(huán)境變量()的值()傳遞命令行選項(xiàng) :-v
v
=
"${v}"
% awk -vv="${v}" 'BEGIN { print v }'123test
或者使它更清晰(少得多的v
s):
% environment_variable=123test% awk -vawk_variable="${environment_variable}" 'BEGIN { print awk_variable }'123test
添加回答
舉報(bào)
0/150
提交
取消