linuxexpect
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
创新互联公司成立以来不断整合自身及行业资源、不断突破观念以使企业策略得到完善和成熟,建立了一套“以技术为基点,以客户需求中心、市场为导向”的快速反应体系。对公司的主营项目,如中高端企业网站企划 / 设计、行业 / 企业门户设计推广、行业门户平台运营、手机APP定制开发、手机网站制作设计、微信网站制作、软件开发、温江服务器托管等实行标准化操作,让客户可以直观的预知到从创新互联公司可以获得的服务效果。
当前文章:linuxexpect
文章源于:http://ybzwz.com/article/gpjccs.html