Bash 在脚本期间保留公钥密码

Bash 在脚本期间保留公钥密码,bash,shell,ssh,ssh-keys,Bash,Shell,Ssh,Ssh Keys,有没有办法在shell脚本期间保留公钥密码 我正在构建一个部署脚本,它需要在实际传输文件之前清除缓存等。之后,我还需要在服务器上运行一个命令。这两个操作都需要我输入密码,我只想在脚本开始时输入一次密码。有办法吗?您应该能够使用ssh add/ssh agent(包含在OpenSSH中)实现这一点。使用ssh add一次性键入密码并将密钥添加到代理后,只要可以与ssh代理通信(通过ssh_AUTH_SOCK环境变量),随后的任何scp/ssh命令都不会提示输入密码。请确保在ssh add中使用“-

有没有办法在shell脚本期间保留公钥密码


我正在构建一个部署脚本,它需要在实际传输文件之前清除缓存等。之后,我还需要在服务器上运行一个命令。这两个操作都需要我输入密码,我只想在脚本开始时输入一次密码。有办法吗?

您应该能够使用ssh add/ssh agent(包含在OpenSSH中)实现这一点。使用ssh add一次性键入密码并将密钥添加到代理后,只要可以与ssh代理通信(通过ssh_AUTH_SOCK环境变量),随后的任何scp/ssh命令都不会提示输入密码。请确保在ssh add中使用“-k”选项,以便代理在适当的时间后使密码过期。

听起来很有希望,我稍后将对此进行研究