【发布时间】:2013-10-20 14:44:12
【问题描述】:
我正在尝试处理heroku certs 命令的输出。 heroku 工具带中的其他命令写入 STDOUT,但 heroku certs 和相关命令(如 heroku certs:info)似乎没有写在我期望在 ubuntu 上的任何地方。正常运行时输出:
$ heroku certs:info --app appname
Fetching SSL Endpoint changedname-3302.herokussl.com info for appname... done
Certificate details:
Common Name(s): *.domain.com
domain.com
...etc
尝试重定向或管道输出的输出:
$ heroku certs --app appname | grep ssl
$ heroku certs --app appname | cat
$ heroku certs:info --app appname | grep ssl
$ heroku certs:info --app appname 2>&1 | grep ssl
$ heroku certs:info --app appname &> /tmp/certs.info; cat /tmp/certs.info
$ heroku certs:info --app appname > /tmp/certs.info; cat /tmp/certs.info
其他 heroku 命令按预期工作:
$ heroku ps --app appname | grep web
=== web (1X): `node www`
web.1: idle 2013/10/12 05:44:15 (~ 10h ago)
$ heroku status --app appname | grep -i status
=== Heroku Status
这是一个应该报告的错误还是我遗漏了什么?
【问题讨论】:
-
我相信我已经找到了答案。该脚本直接打开 /dev/tty 并绕过 STDERR/STDOUT/STDIN。在这里找到了答案:unix.com/shell-programming-scripting/… 我可以看到一些证书信息不应该被捕获。