我使用以下命令:
su - postgres // change user to 'postgres'
dropdb db1 // drop database 'db1'
exit // change user back to root
这些命令在控制台上运行得很好,所以我用相同的行创建了一个小的sh
文件,并添加了一个-x
chmod来执行该文件。然而,当我执行脚本时,只有第一行,并将用户更改为postgres
,并在光标闪烁的情况下停止。然后,如果我键入exit
返回到root
,它将显示消息:dropdb: error: could not connect to database template1: FATAL: role "root" does not exist
。
我该怎么做?
#!/bin/bash
sudo -u postgres psql -c 'drop database IF EXISTS test'
exit