我想转储postgres数据库,并使其定期与crontab。
所以我尝试在bash脚本中运行以下命令:

sudo -u postgres pg_dump --dbname=postgresql://django:[email protected]:5432/django

我明白了:
-巴什:!:找不到事件
可能是因为密码中有特殊字符。如何逃离特殊角色?如何传递密码参数?有没有其他方法可以定期从postgresql自动转储。

最佳答案

你必须encode特殊字符。
如果您的密码是a!b@c,则命令将是

sudo -u postgres pg_dump --dbname=postgresql://django:a%21b%[email protected]:5432/django

关于bash - Postgres定期自动转储,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49752673/

10-09 22:29