如何为 BASH 脚本添加密码

Roy*_*ley 3 scripting bash password

我想创建一个脚本来运行以下 BASH 命令:

mysqldump -u [username] -p [db_name] > [path to backup file]
Run Code Online (Sandbox Code Playgroud)

这会导致备份文件。在 BASH 中运行它时,它会在继续之前提示输入密码。

如何在 BASH 脚本中制作它以便自动输入密码?

这可以安全地完成吗?

Sté*_*las 13

这里最好的方法是做这样的事情:

mysqldump --defaults-extra-file=/path/to/auth.cnf ...
Run Code Online (Sandbox Code Playgroud)

哪里auth.cnf看起来像:

[client]
user=the-user
password=the-password
Run Code Online (Sandbox Code Playgroud)

然后确保该文件只能由打算运行该脚本的任何人读取。脚本本身可以是世界可读的。