加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux管道,警告消息,标准输出

发布时间:2020-12-14 02:43:29 所属栏目:Linux 来源:网络整理
导读:这可能是以最简单的形式提出问题的最佳地点.我正在编写一个脚本,它接受命令的输出并将其放入变量中.经过一些调试后,当错误没有转到stdout而是转到控制台(或墙)时,我发现了命令.见下面的例子: 命令成功运行时 root@local# apcaccess statusAPC : 700VERSION
这可能是以最简单的形式提出问题的最佳地点.我正在编写一个脚本,它接受命令的输出并将其放入变量中.经过一些调试后,当错误没有转到stdout而是转到控制台(或墙)时,我发现了命令.见下面的例子:

命令成功运行时

root@local# apcaccess status
APC : 700
VERSION : xxxxx
BATTSTAT : AC

当命令出错时

root@local# apcaccess status
apcupsd @ localhost: Connection Refused.

root@local# apcaccess status | grep -i version
apcupsd @ localhost: Connection Refused.

当我尝试通过grep’apcaccess status |管道命令时,我注意到了grep -i version’我将在成功运行时获得版本号,但在系统上它出错了我收到错误消息.我相信它不会经历stdout.

问题是:如何强制输出转到标准输出?

解决方法

# apcaccess status 2>&1 | grep -i version

这会将stderr重定向到stdout,所以grep会看到输出.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读