我有一個shell腳本構造一個awk程序作爲一個字符串,然後將該字符串傳遞給awk。這是因爲我想在awk程序中使用shell變量的值。如何預先構建awk語句以在命令行上傳遞給awk?
我的代碼如下所示:
awk_prog="'{if (\$4~/$shell_var/) print \$1,\$2}'"
echo $awk_prog
awk $awk_prog $FILENAME
然而,當我把這個字符串傳給awk中,我總是得到錯誤:
'{if ($4~/regex/) print $1,$2}'
awk: '{if
awk:^invalid char ''' in expression
是什麼錯誤訊息?我試過-F:開關,但它沒有幫助。我怎樣才能解決這個問題?
謝謝。