我正在编写一个bash脚本来运行ruby命令,它需要一些宝石。我正在检查gem是否已安装并安装如下:
if ! gem list rest-client -iq
then
echo "Missing rest-client gem, installing now..."
gem install rest-client
fi
除了输出true
或false
这一事实外,这很有用。看看帮助页面,我认为添加q
选项可以使这个输出无声,但是我可能错了。
如何抑制true
或false
输出并采取行动?
答案 0 :(得分:1)
如评论中所示,只需将stdout
重定向到/dev/null
,这样就不会显示:
if ! gem list rest-client -iq >/dev/null
# ^^^^^^^^^^
then
echo "Missing rest-client gem, installing now..."
gem install rest-client
fi
答案 1 :(得分:0)
使用--silent
标志。
gem list -i rest-client --silent