我有一個包含幾行文本的文檔。AWK搜索一個字符串並打印出現字符串的全文
實施例(未實際):
*準備42鎖定從表中刪除其中type = '測試' 和USER_ID = '099'and數=' + 66719919 *
我希望能夠搜索文檔中發生的user_id(不遵循模式)並輸出爲:
user_id = 009
OR
請我怎麼做到這一點用awk?
謝謝。
我有一個包含幾行文本的文檔。AWK搜索一個字符串並打印出現字符串的全文
實施例(未實際):
*準備42鎖定從表中刪除其中type = '測試' 和USER_ID = '099'and數=' + 66719919 *
我希望能夠搜索文檔中發生的user_id(不遵循模式)並輸出爲:
user_id = 009
OR
請我怎麼做到這一點用awk?
謝謝。
awk '/user_id/{for(i=1;i<=NF;i++){if($i~/user_id/){split($i,a,"=");print a[2]}}}' your_file
測試:
> echo "*Prepare type='test' and user_id='099' and number='+66719919*" | awk '/user_id/{for(i=1;i<=NF;i++){if($i~/user_id/){split($i,a,"=");print a[2]}}}'
'099'
另一個問題:
> echo "*Prepare type='test' and user_id='099' and number='+66719919*" | awk '/user_id/{for(i=1;i<=NF;i++){if($i~/user_id/){ print $i}}}'
user_id='099'
不錯的Sarathi。工作也是如此。如果可能的話,你可以向awk新手解釋一下,第二個命令是什麼?謝謝。 – ace 2013-03-14 11:50:05
'user_id = NUM'是否出現在兩行? – Thor 2013-03-12 11:24:58