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