我知道不建议这样做,但是是否可以将用户密码传递给 scp?
我想通过 scp 复制一个文件作为批处理作业的一部分,而接收服务器当然需要密码,不,我不能轻易地将其更改为基于密钥的身份验证。
原文由 Argelbargel 发布,翻译遵循 CC BY-SA 4.0 许可协议
我知道不建议这样做,但是是否可以将用户密码传递给 scp?
我想通过 scp 复制一个文件作为批处理作业的一部分,而接收服务器当然需要密码,不,我不能轻易地将其更改为基于密钥的身份验证。
原文由 Argelbargel 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用 sshpass :
sshpass -p "password" scp -r user@example.com:/some/remote/path /some/local/path
或者密码不会显示在 bash 历史记录中
sshpass -f "/path/to/passwordfile" scp -r user@example.com:/some/remote/path /some/local/path
上面将路径的内容从远程主机复制到您的本地。
安装 :
apt install sshpass
yum install sshpass
port install sshpass
brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb
原文由 KevinS 发布,翻译遵循 CC BY-SA 4.0 许可协议
7 回答5.3k 阅读
4 回答4k 阅读
2 回答5.9k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
2 回答796 阅读✓ 已解决
2 回答3.2k 阅读
您可以使用诸如 expect 之类的工具编写脚本(也有方便的绑定,例如用于 Python 的 Pexpect )。