【发布时间】:2015-10-27 12:35:58
【问题描述】:
我正在编写一个 shell 脚本,它将 grep 文档中的某些单词,然后以彩色输出显示找到的单词。
echo $(egrep -wi --color=always 'error|exception' $logFile)
现在我想将此 grep 与另一个 grep 结合起来以排除一些结果 为此,我想将上述命令传递给 grep 命令以排除某些模式
grep -vi '<status>error</status>'
由于某种原因,当我尝试执行命令时失败了
echo $(egrep -wi --color=always 'error|exception' $logFile | $(grep -v '<STATUS>ERROR</STATUS>') )
或者即使我尝试
echo $(egrep -wi --color=always 'error|exception' $logFile | grep -v '<STATUS>ERROR</STATUS>')
我做错了什么?为什么会失败?
【问题讨论】:
-
output=$(egrep -wi --color=always 'error|exception' $logFile | grep -v '
ERROR ') echo $output -
echo $(foo)本质上与foo本身相同。 -
它不工作==> 第 87 行:错误:找不到命令
-
发布您的第 87 行。执行带有标志“-x”的脚本并发布第 87 行。
-
第 87 行是上面提到的命令: echo $(egrep -wi --color=always 'error|exception' $logFile | $(grep -v '
ERROR ' ) )