如何创建文件夹以在Postgresql中保存输出?

时间:2019-07-17 09:04:06

标签: postgresql directory psql

如果我想将file1.sql的输出保存到新文件file2.sql,我将在terminal / cmd中使用以下命令:

psql -U postgres -f file1.sql -o file2.sql

但是,如果我希望file2.sql位于另一个文件夹中怎么办?

如果我尝试执行以下命令:

psql -U postgres -f file1.sql -o New/file2.sql,

不会自动创建新文件夹,并且会显示错误消息。我必须先存在“新建”文件夹。

我需要许多输出文件和许多新文件夹。一种明显的选择是使用Python预先创建所需的文件夹,但实际上,PostgreSQL无法为我创建文件夹吗?

1 个答案:

答案 0 :(得分:2)

使用mkdir -p

如果目录New不存在,则尝试创建目录;如果目录已经存在,则不执行任何操作。&&确保 仅当mkdir命令成功时,您的psql命令才会运行。

mkdir -p New && psql -U postgres -f file1.sql -o New/file2.sql

如果要在psql中运行os命令,只需在\! <command>中使用file1.sql选项,然后通过\o选项输出。

\! mkdir -p New
\o New/file2.sql