psql shell 命令执行带 \!
psql shell command execution with \!
有什么方法可以捕获 shell 输出(在 psql 变量中)and/or 运行 shell 命令的退出代码 psql
使用 \!
? documentation 未提供任何详细信息。
您可以使用 \o <filename>
选项指定输出文件或使用 COPY
command 来解决您的问题。
\!
、
似乎不可能
但可以从外部命令输出设置变量,
testdb=> \set content `cat my_file.txt`
然后在 sql 表达式中使用此变量,如下所示:
testdb=> INSERT INTO my_table VALUES (:'content');
使用 \!
和 \o
..
你可以这样把两者结合起来,
\! echo "SELECT 1;" > bar
(运行命令 echo "SELECT 1;"
将 SELECT 1;
的输出重定向到 bar
)
\o bar
(运行 bar
中的命令)
有什么方法可以捕获 shell 输出(在 psql 变量中)and/or 运行 shell 命令的退出代码 psql
使用 \!
? documentation 未提供任何详细信息。
您可以使用 \o <filename>
选项指定输出文件或使用 COPY
command 来解决您的问题。
\!
、
但可以从外部命令输出设置变量,
testdb=> \set content `cat my_file.txt`
然后在 sql 表达式中使用此变量,如下所示:
testdb=> INSERT INTO my_table VALUES (:'content');
使用 \!
和 \o
..
你可以这样把两者结合起来,
\! echo "SELECT 1;" > bar
(运行命令echo "SELECT 1;"
将SELECT 1;
的输出重定向到bar
)\o bar
(运行bar
中的命令)