#更改bash配置文件
vim ~/.bash_profile
#使bash配置文件生效
source ~/.bash_profile
bash配置文件内容:添加如下内容
alias aly="expect /Users/duanxiangqing/shell_command/aly.sh"
/Users/duanxiangqing/shell_command/aly.sh的内容如下:
1 #!/usr/bin/expect
2 set timeout 30
3 spawn ssh root@88.88.88.888
4 expect "password:"
5 send "yourPassword\n"
6 interact
在上面的6行中,第一行是选用解释器的意思,我们shell一般选的是 /bin/bash,这里需要选用expect,具体的内容需要看expect在哪。第二行是设置超时时间,单位是秒(s)。第三行是执行ssh登录命令,spawn是expect的语句,执行命令前都要加这句。第四行,expect "password:"这句意思是交互获取是否返回"password:"关键字,因为在执行ssh时会返回输入password的提示,例如:jikuan.zjk@10.125.25.189's password:
。第五行,send就是将密码发送过去,记得加回车符\n
。第六行,interact代表执行完留在远程控制台,不加这句执行完后返回本地控制台.
登录进远程服务器后,执行exit
可以退出。
- RSA方法
#获取本机mac的id_rsa.pub
cd ~/.ssh
cat id_rsa.pub
#登录服务器
#将本机mac的id_rsa.pub的内容粘贴到文件a 当然也可以使用scp把本机mac的id_rsa.pub传到服务器上或者用sed -i直接写authorized_keys
cd ~/.ssh
vim a
cat a >> authorized_keys