\o和\! 命令了解
程序员文章站
2022-06-07 15:33:29
...
\! [ command ] 跳到一个单独的shell或者执行shell命令command。参数不会被进一步解释,shell将会
原封不动地看到参数。特别要说明的是,变量替换规则和反斜线转义在这里不适用。
\o 或 \out [ filename ] \o 或 \out [ | command ] 安排把未来的查询结果保存到文件filename 中或者用管道导向到shell命令command。 如果没有指定参数,查询输出会被重置为标准输出。
"查询结果"包括从数据库服务器得到的所有表、命令响应和提示,还有查询数据库的各 种反斜线命令(如 \d )的输出,但不包括错误消息。
提示: 要在查询结果之间散布文本输出,可以使用 \qecho.
测试:
highgo=# \o /tmp/highgo
highgo=# \qecho [email protected]#$%^&*
highgo=# select version();
highgo=# \qecho [email protected]#$%^&*
highgo=# \o
highgo=# \! cat /tmp/highgo
[email protected]#$%^&*
version
----------------------------------------------------------------------------------------------------------
PostgreSQL 9.5.7 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11), 64-bit
(1 row)
[email protected]#$%^&*
highgo=# \! cat /dev/null > /tmp/highgo
highgo=# \! cat /tmp/highgo
By 天蝎座