在手册页中,我看到以下内容:
-L LOGOPTS Toggle various defaults controlling logging:
e: log to standard error
o: log to standard output
这让我非常兴奋,因为我处于从 STDOUT 而不是从 STDERR 捕获错误对我有利的情况。
如果我运行命令:
snmpget -v1 -ccommString -Lo 172.16.x.x .1.2.3.4.5.6.7.8.9
我回到我的终端
Error in packet
Reason: (noSuchName) There is no such variable name in this MIB.
Failed object: iso.2.3.4.5.6.7.8.9
但是,如果我运行命令:
snmpget -v1 -ccommString -Lo 172.16.x.x .1.2.3.4.5.6.7.8.9 2> foo
我在终端上没有得到任何响应,但文件 foo 包含我上面得到的相同错误消息。因此,我在 STDERR 上收到错误消息,而不是在 STDOUT 上,如我所料。
我在这里读错了手册页吗?此外,我在 linux 和 windows 系统上都试过这个,由于我所处的情况,我更愿意在 STDOUT 而不是 STDERR 上发出错误,因为我不想使用 shell 来完成通常的工作 2 >&1
非常感谢任何帮助或建议。