【发布时间】:2019-10-04 11:08:54
【问题描述】:
我是新手,谁能帮我写一个脚本来使用 shell 脚本自动化这些行?
postgres=# CREATE DATABASE testdb;<br>
postgres-#
【问题讨论】:
标签: bash postgresql shell psql
我是新手,谁能帮我写一个脚本来使用 shell 脚本自动化这些行?
postgres=# CREATE DATABASE testdb;<br>
postgres-#
【问题讨论】:
标签: bash postgresql shell psql
假设您使用的是 Linux:
postgresql 身份登录Linux
使用所有 CREATE DATABASE 命令创建一个文件。在本例中,文件为createdb.sql,包含以下 3 个创建数据库命令:
创建数据库萌;
创建数据库拉里;
创建数据库卷曲;
在 shell 提示符下运行以下命令:
psql -f createdb.sql
然后您可以列出您的新数据库——在本例中为 moe、larry 和 curly。
由于您提到想要一个 bash shell 脚本(自动化)上述任务,您可以创建一个如下所示的脚本来接受包含您的 SQL 命令的 SQL (.sql) 文件的名称作为命令行参数,并使用 psql 处理它们:
#!/bin/bash
psql -f $1
假设上述文件及其内容名为autosql.sh,您将在创建后更改脚本模式以执行(chmod 755 autosql.sh)并从命令行运行它:
autosql.sh createdb.sql
您现在可以使用此 bash shell 脚本并传入包含您希望运行的 SQL 命令的任何 SQL (.sql) 文件。
要在 Linux 上自动执行此过程,请使用 cron(有关详细信息,请参阅 cron 手册页)。
【讨论】: