2017-09-25 183 views
0

我收到語法錯誤的下面一行。不知道什麼是語法錯誤。awk語法和非法語句錯誤

bash-3.2$ awk -F"|" '{ if ($4 != "N.A." && $29 =="1") printf("%s|testfile\n", $4) >> "out1.txt" else if ($4 != "N.A." && $29 =="2A") printf("%s|testfile\n", $4) >> "out2.txt" }' infile 
awk: syntax error near line 1 
awk: illegal statement near line 1 
+0

這是一個很好的做法,讓我們知道您的操作系統的細節只是缺少;,你可以遵循Ed的建議。 – RavinderSingh13

回答

1

您正在使用破舊的awk(Solaris上的/ bin/awk)。在Solaris上使用/ usr/xpg4/bin/awk。

+0

當我使用/ usr/xpg4/bin/awk時出錯。 '/ usr/xpg4/bin/awk:語法錯誤上下文是: >>> intf(「%s | testfile \ n」,$ 4)>>「out1.txt」else <<<' –

+0

完全不同的問題。 [接受這個答案](https://stackoverflow.com/help/someone-answers)然後問一個新的問題,如果你不能爲自己找出一個。 –

+1

謝謝。這有幫助。 –

0

我想你以後"out1.txt"

+0

謝謝。這有幫助。 –