\!
和 \o
您可以像这样将两者组合起来使用:
\! echo "SELECT 1;" > bar
(运行命令echo "SELECT 1;"
,将SELECT 1;
的输出重定向到bar
)\o bar
(在bar
中运行命令)\!
来说是不可能的,但可以从外部命令输出中设置一个变量。testdb=> \set content `cat my_file.txt`
然后在 SQL 表达式中使用这个变量,如下所示:
testdb=> INSERT INTO my_table VALUES (:'content');
你可以使用\o <文件名>
选项来指定输出文件,或者使用COPY
命令来解决你的问题。
\o
有什么用。如果我正在运行一个shell命令,我总是可以将其输出重定向到文件。而且我也不确定COPY
有什么用。我不是在尝试加载数据。 - Sim\o
(https://github.com/dsavinkov/shell/blob/master/update_all_postgres_schemas.sh)。我猜这不是你的情况。 - Dmitry Spsql
зљ„shellйЂЂе‡ғзЉ¶жЂЃпәЊдҢ†ж€‘жІҰ有看到有关如дҢ•жҚ•иҺ·йЂљиү‡\!
иүђиҰЊзљ„д»»дҢ•е†…е®№зљ„йЂЂе‡ғзЉ¶жЂЃзљ„ж–‡жҰӘгЂ‚дҢ жњ‰еђ—пәџ - Sim