这个没用过,刚才试了一下,\o 应该只是把查询语句(select)的结果写到filename中,可以:
select * from table \o filename;把输出结果先定向到filename中,然后再运行select * from table,我这里会提示语法错误,不用理它,再运行select * from tablename;查询的结果就会输出到filename中了。至于你的\h* 命令输出的东西,没法这样在交互端直接定向到文件中的,你可以利用一下unix系统功能。写一个shell,比如名为test.sh,内容如下:
psql dbname<<!
\h*
就这两行,然后在命令行下直接运行:
sh test.sh>aaa.txt
则\h* 的结果就都存储到aaa.txt中了。