我有一个运行FreeBSD的虚拟机,我进行了设置,所以我可以通过ssh无头访问它。但是我不想每次都输入命令。所以我创建了一个脚本文件SSH-BSD
,并对其进行了修改。它包含:
#!/bin/bash
echo `ssh -p 3022 user@127.0.0.1`
当我启动它连接的脚本时,提示我输入密码。但是当我输入它时,它只是挂起而不是什么都没有。请注意,如果我输入脚本中的确切内容,那么我就可以很好地登录到机器。
所以我想,也许是因为脚本以这种方式运行,我的机器需要进行身份验证。所以我通过ssh-keygen
然后ssh-copy-id
创建了密钥到VM。这很好用,不再需要我输入密码,但是当我启动脚本时,它只是挂起。
我不做bash脚本所以我可能没有意识到这些限制,有人可以赐教吗?谢谢。
答案 0 :(得分:1)
请勿使用echo
#!/bin/bash
ssh -p 3022 user@127.0.0.1
这应该可以正常工作。