snmpget显示错误信息的响应
问题描述:
out=$(snmpget -v2c -c $community $device ifDescr.2)
的输出不写入变量,但错误信息出现在屏幕上。snmpget显示错误信息的响应
因为if [[ "$out" == *"Error"* ]]
,我需要把这个错误信息给变量。 有没有另一种方法来实现它?
答
snmpget正在向stderr发送错误消息,而不是stdout。这在UNIX/Linux上很常见。但是命令替换运算符$()
仅捕获标准输出。如果你想赶上错误信息到您的变量,您需要使用2>&1
重定向标准错误到标准输出:
out=$(snmpget -v2c -c $community $device ifDescr.2 2>&1)
答
与得到错误号已经解决到/ dev/null,并且如果条件使...但谢谢为新知识:)
请在您的问题中添加更多详细信息。 – 2014-10-20 16:26:01