0
當我在命令提示符下運行grep命令時,輸出是正確的。但是,當我將它作爲腳本的一部分運行時,我只能得到部分輸出。有人知道這個程序有什麼問題嗎?C shell腳本中的grep查詢不能正確執行
#!/bin/csh
set res = `grep -E "OPEN *(OUTPUT|INPUT|I-O|EXTEND)" ~/work/lst/TXT12UPD.lst`
echo $res
當我在命令提示符下運行grep命令時,輸出是正確的。但是,當我將它作爲腳本的一部分運行時,我只能得到部分輸出。有人知道這個程序有什麼問題嗎?C shell腳本中的grep查詢不能正確執行
#!/bin/csh
set res = `grep -E "OPEN *(OUTPUT|INPUT|I-O|EXTEND)" ~/work/lst/TXT12UPD.lst`
echo $res
您的通配符可能正在被調用awk的shell處理,而不是作爲awk腳本的一部分處理。
嘗試用\
(即\*
)轉義*
想你的解決方案,但不工作 – Programmer
我也嘗試RE集合='grep的-E 'OPEN \ *(OUTPUT |輸入| IO |延伸)' 〜/ work/lst/TXT12UPD.lst' – Programmer
您可能需要2個反斜槓 - 一個用於運行該命令的shell,一個用於反引號 – John3136