我很难理解为什么下面返回的代码是1.
echo 'Total' | grep -c No
0
所以"不"不存在于"总计"中.但在查找其返回码时,我将其视为1.
echo $?
1
为什么返回码显示为1?有办法解决这个问题吗?
我很难理解为什么下面返回的代码是1.
echo 'Total' | grep -c No
0
所以"不"不存在于"总计"中.但在查找其返回码时,我将其视为1.
echo $?
1
为什么返回码显示为1?有办法解决这个问题吗?
根据man grep
页,-c
面旗帜代表
-c、 --伯爵
所以你看到的是比赛的计数,不要与grep
场比赛的退出代码混淆.代码1
是因为没有与输入匹配的行.
看看另一个案子,
echo 'No' | grep -c No
1
echo $?
0
同样要阅读man grep
页的EXIT CODES
页,
退出状态