对于那些想要回复我应该使用SSH密钥的人请弃权
我正在尝试在bash脚本中使用expect来提供SSH密码.提供密码是有效的,但我不会像我应该的那样在SSH会话中结束,它会回到海峡.
我的剧本:
#!/bin/bash
read -s PWD
/usr/bin/expect <<EOD
spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no usr@$myhost.example.com'
expect "password"
send "$PWD\n"
EOD
echo "you're out"
Run Code Online (Sandbox Code Playgroud)
我脚本的输出:
spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no usr@$myhost.example.com
usr@$myhost.example.com's password: you're out
Run Code Online (Sandbox Code Playgroud)
我想拥有我的SSH会话,只有当我退出它才能返回我的bash脚本.我之前使用bash的原因是因为我使用了一个菜单,我可以选择连接哪个单元.
谢谢
我正在尝试建立一个多阶段的docker构建,并且需要在最初的第一阶段构建步骤中克隆我的源代码。
但是,git clone由于存储库的路径在私有github enterpr服务器上,因此需要用户名/密码。在正常情况下,git会提示您输入用户名/密码。但是,从RUNDockerfile中的某个步骤启动git clone时,没有这样的提示,并且输出很简单:
致命:无法读取“ https://yourserver.com ”的用户名:无此类设备或地址命令“ / bin / sh -c git clone https://yourserver.com/name/yourpath ”返回非零码:128
即使使用-tidocker build步骤中指定的标志。如何传递用户名/密码或至少提示输入?我不希望将其嵌入Dockerfile中。