重击:显示空白值的回声

时间:2018-09-25 08:19:03

标签: linux bash awk sed grep

我有以下两个变量

SampleOutput=`some command giving output`
Status=`echo "$SampleOutput" | grep -qs "Active"`
echo $SampleOutput
echo $Status

此处$SampleOutput的值为AgentEnable=Active bla bla bla

但是,$Status会以blank的形式出现,我不确定为什么$Status应该以空白值AgentEnable=Active来成为空白的情况

1 个答案:

答案 0 :(得分:3)

在使用grep -q时,您不会从grep获得任何输出。您只能使用以下返回状态:

grep -qs "Enable" <<< "$SampleOutput"
Status=$?

根据man grep

  

-q, --quiet, --silent   安静模式:禁止正常输出。 grep只会搜索文件,直到找到匹配项为止,从而使搜索的成本可能降低。

请注意,如果您不在其他任何地方使用SampleOutput,则可以直接使用:

some command | grep -qs "Enable"
Status=$?