我想通过使用命令来计算ERROR一词的出现: -
mysql -B -u root -pxxxx -h abc -e show databases | grep -c "ERROR"
但是我的理解是它应该返回1然而它将它返回为O
为什么?
另请告诉我mysql -B和-e
的重要性谢谢, 鲁奇尔
答案 0 :(得分:2)
默认情况下,错误会转到标准错误(stderr),因此您需要将其重定向到标准输出(通过2>&1
)。在这种情况下,grep可以处理它们:
mysql -B -u root -pxxxx -h abc -e show databases 2>&1 | grep -c "ERROR"