1
我正在使用Bash别名,它允许我缩短SSH命令以便登录到我的路由器。相当微不足道,但节省时间!我现在想要做的就是更进一步,并完全自动化路由器的登录。期待别名
举例来说,在我的~/.bashrc
文件我有以下条目:
sshFuncB()
{
ssh -o StrictHostKeyChecking=no [email protected]$1 - | /usr/bin/expect<<EOF
set timeout 5
set send_human {.1 .3 1 .05 2}
expect {
"password: " { send -h "MYPASSWORD\r" }
"No route to host" { exit 1 }
timeout { exit 1 }
}
set timeout 2
sleep 1
expect {
"N]?" { send "y\r"; exp_continue }
timeout { exit 1 }
}
expect eof
EOF
}
alias z=sshFunc
然而,当我键入z myrouterhostname
这并没有给所需的输出。我必须找到一种方法来启动SSH连接,并希望在将控制权返回给用户之前自动登录。
任何想法?
您的别名'z'指向'sshFunc'而不是'sshFuncB'。我希望这是一个错字。一个问题。你得到任何输出? – Dinesh 2014-10-28 11:12:23