我想在tcl:
中执行以下awk脚本(运行良好)exec awk {$1=="text" {print $0}} temp1.txt > temp2.txt}
但问题是“text”来自TK入口小部件,我必须把它放在一个awk无法识别的变量($ var)中:
set var [.entry get]
exec awk {$1==$var {print $0}} temp1.txt > temp2.txt}
知道如何跳过它或让它运行吗?
PS我想留下awk,如果可能的话,不要更改tcl上的代码。
此致 卢卡斯
答案 0 :(得分:4)
使用awk中的-v
开关将外部变量传递给awk:
exec awk -v var=$var {$1==var {print $0}} temp1.txt > temp2.txt}