2013-11-29 156 views
0

当我在命令提示符下运行grep命令时,输出是正确的。但是,当我将它作为脚本的一部分运行时,我只能得到部分输出。有人知道这个程序有什么问题吗?C shell脚本中的grep查询不能正确执行

#!/bin/csh 
set res = `grep -E "OPEN *(OUTPUT|INPUT|I-O|EXTEND)" ~/work/lst/TXT12UPD.lst` 
echo $res 

回答

0

您的通配符可能正在被调用awk的shell处理,而不是作为awk脚本的一部分处理。

尝试用\(即\*)转义*

+0

想你的解决方案,但不工作 – Programmer

+0

我也尝试RE集合='grep的-E 'OPEN \ *(OUTPUT |输入| IO |延伸)' 〜/ work/lst/TXT12UPD.lst' – Programmer

+0

您可能需要2个反斜杠 - 一个用于运行该命令的shell,一个用于反引号 – John3136