我想執行以下awk腳本在TCL(這是運作良好):TCL AWK exec命令裏面的全局變量
exec awk {$1=="text" {print $0}} temp1.txt > temp2.txt}
但問題是,「文本」是由TK進入正在添加窗口小部件我必須把它放在awk無法識別的變量($ var)中:
set var [.entry get]
exec awk {$1==$var {print $0}} temp1.txt > temp2.txt}
任何想法如何跳過它或使其運行?
PS我想留在awk中,如果可能的話,不要更改tcl上的代碼。
問候, 盧卡斯
我還沒有和AWK工作了大約二十年:不,你需要周圍的報價==表達式的第二個操作數? –
另外,在你的例子中大括號是不平衡的:你的意思是'exec awk {$ 1 == $ var {print $ 0}} temp1.txt> temp2.txt'? –
哦!沒有注意到你的第一個例子。畢竟,引用似乎是必要的。請參閱下面的答案。 –