这个问题类似于: psql - write a query and the query's output to a file
但是,它们的语法不起作用。
当我从命令行打开psql会话时,我想保存发送的查询和结果。
以下代码保存查询,但不输出:
psql -h host -U username -p port -d database -L ~/file_to_save_output.txt
答案 0 :(得分:1)
您可以使用下面的STDOUT
符号重定向输出(>
)。重定向适用于Unix和Windows命令提示符。
psql -h host -U username -p port -d database -L ~/file_to_save_output.txt > output.txt
- 回波查询
将发送到服务器的所有SQL命令也复制到标准输出。 这相当于将变量ECHO设置为查询。
因此,为了将查询+查询结果提供给单个文件,
psql -h host -U username -p port -d database --echo-queries -L output_queries_and_results.txt
此外,您可以将查询和查询结果保存在单独的文件中,
psql -h host -U username -p port -d database --echo-queries -L output_queries_only.txt -o output_results_only.txt
注意:第一种方法仍会在终端中显示查询和查询结果,第二种方法会将所有结果输出到文件中,并且不会在终端中显示。