当我想做一个正常的 sshpass
命令在我的终端中正常工作。这是我正在使用的命令。
sshpass -p 'Rito$pass@20' ssh '[email protected]'
当我试图通过创建一个别名来使用同样的命令时,它的反应是: Permission denied, please try again.
我已经在 .profile
文件。这是我的别名的样子。
alias myalias="sshpass -p 'Rito$pass@20' ssh [email protected]"
有谁能解释一下为什么我在使用别名时收到 Permission denied 错误,以及如何解决这个问题?
根据@pynexj的评论,我运行了以下命令: set -x; myalias; set +x
并发现人物帖 $
在密码中没有得到考虑。我的密码是 Rito$pass@20
但它只考虑到 Rito@20
即包括$之后的所有字符都被忽略,直到@字符。
根据评论,有一个 $
中的字符。因此,要解决这个问题,你需要对密码中的 $
字符。
例如,如果密码是 pa$$word
:
alias myalias="sshpass -p 'pa\$\$word' ssh [email protected]"