突然碰到有人问ssh再传输密钥时候能不手动输入密码,由于没有碰到过这种情况,所以查了一下发现可以用sshpass做到。
sshpass 【参数】 ssh命令:
参数:
-p password #将参数password作为密码
-f passwordfile # 提取passwordfile的第一行作为密码
-e #将环境变量SSHPASS作为密码
比如说 ssh root@192.168.01 利用sshpass可以写作 sshpass -p 123456 ssh root@192.168.01
如果是第一次登陆则会提示:“Are you sure you want to continue connecting (yes/no)” 这时候sshpass会不好使
可以再ssh命令后面添加 -o StrictHostKeyChecking=no 来避免输入yes 例如
sshpass -p 123456 ssh -o StrictHostKeyChecking=no root@192.168.0.1