【发布时间】:2021-03-16 16:53:59
【问题描述】:
我想编写一个 bash 脚本来监控我的服务器的状态。
目前我有以下行来记录 ping:
ping -c 1 google.com | grep -A 1 "bytes from" | xargs -L 1 -I '{}' date '+"%F %T" {}' >> ping.log
不幸的是,grep 过滤器也过滤掉了错误消息,但我只想删除第一行和摘要。
"2020-12-04 15:46:00" 64 bytes from 216.58.208.110 (216.58.208.110): icmp_seq=1 ttl=37 time=16.2 ms
"2020-12-04 15:47:00" Request Timed Out.
是否有另一种方法可以仅抑制 ping 摘要,以便将错误消息也添加到我的日志中?
【问题讨论】:
-
错误消息写入标准错误,而不是标准输出。在管道之前使用
2>&1重定向它。
标签: bash logging stdout ping stderr