9

我正在编写一个 bash 脚本,并且正在获取此命令的输出:

fpings=$(fping -c 1 -t 1 $ips | sort) 

fpings变量确实包含命令的输出,并且命令的实际输出不会打印到 shell,但它仍然会为每个 ip ping 的 shell 写入一行。

有一个开关 ( -q) 可以抑制输出(我想要的部分),但没有任何可以抑制我不想要的部分。

如何从 fpings 命令获取结果而不将内容打印到 shell?

4

2 回答 2

9

如果您不想看到标准错误,请将其重定向到/dev/null

fpings=$(fping -c 1 -t 1 $ips 2>/dev/null | sort) 
于 2013-07-11T21:37:20.097 回答
4
fpings=$( {fping -c 1 -t 1 $ips | sort; } 2>&1 )

应该工作 {} 捕获所有内容,然后将两个流(输出和错误)重定向到刚刚输出并保存在变量中

于 2013-07-11T21:29:09.350 回答