【发布时间】:2018-11-18 13:53:51
【问题描述】:
我正在像这样运行psql 查询:
$ psql --file=foo.sql "BAR-DB"
foo.sql 包含查询的位置。 foo.sql 语法错误,因此输出是错误消息列表。我的计划是将输出通过管道传输到grep,这样我就可以过滤特定的错误消息,但是
$ psql --file=foo.sql "BAR-DB" | grep PATTERN
似乎什么也没做。 psql 的文档显示了可选标志:
-o, --output=FILENAME send query results to file (or |pipe)
但我不确定如何使用它将输出通过管道传输到 grep。正确的语法是什么?
【问题讨论】:
-
psql --file=foo.sql "BAR-DB" 2>&1 | grep -- PATTERN怎么样? -
也许这篇文章会对你有所帮助:stackoverflow.com/q/28436918/6862601
-
@codeforester 你的第一个建议让我得到了我想要的!您介意将其重新发布为答案,以便我将其标记为已回答吗? (你能解释一下
2>&1和--在做什么吗?)