我是新手,有人可以帮我编写一个脚本以使用Shell脚本自动执行这些行吗?
postgres=# CREATE DATABASE testdb;<br>
postgres-#
答案 0 :(得分:0)
假设您使用的是Linux:
postgresql
身份登录Linux 使用所有CREATE DATABASE命令创建文件。在此示例中,文件为createdb.sql
,并包含以下3个create database命令:
创建数据库moe;
创建数据库拉里;
卷曲创建数据库;
从Shell提示符运行以下命令:
psql -f createdb.sql
然后,您可以列出新数据库-在这种情况下,是moe,larry和curl。
由于您提到要使用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手册页)。
答案 1 :(得分:0)