linux expect

发布时间:2020-08-10 11:10:47 作者:hgs19921112
来源:ITPUB博客 阅读:122
expect -c "
   set timeout -1;
   spawn ssh root@192.168.6.132;
   expect {
    *(yes/no)* {send  yes\r ;exp_continue;}
    *password* {send  123456\r ;exp_continue;}
eof {exit 0 }
}";
通过expect工具,shell在while循环中完成服务期间的免密登录一键话脚本
1.前提要安装expect包
2.代码如下:
#!/bin/sh
#主服务器密码
password=123456
while read hostname ; do
    expect -c "
         set timeout -1;
         spawn ssh-copy-id ${hostname} ;
         expect {
         "*password:*" {send --  ${password}\r ;exp_continue;}
         "*\(yes/no\)*"  {send -- yes\r ;exp_continue;}
         eof {exit 0;}
          }"
echo "hosts:${hostname} done."
#ipconf.cfg 中存放要与主服务器要免密登录的用户的ip 例如: root@1921.68.245.134 每一行的格式与该例相同
done < ipconf.cfg
ifconf.cfg示例:
   root@192.168.6.132
   root@192.168.6.133



推荐阅读:
  1. Linux expect是什么意思
  2. Linux实现自动登录的实例讲解

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

expect linux ct

上一篇:Java网络编程和NIO详解7:浅谈 Linux 中NIO Selector 的实现原理

下一篇:使用JSP实现简单的用户登录注册页面示的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》