expect两种用法-创新互联
yum install expect -y
#先安装expect
1.测试用法
#!/usr/bin/expect
#解释语言,这边运行要以./运行,bash运行会报错
spawn ssh root@192.168.0.14
#启动新的进程
expect "*password:"
#进程接收字符串,匹配
send "yxy7714707@\r"
#前面匹配到了就输入 “ ” 里的内容
expect "*#"
send "ifconfig>>123.txt\r"
send "exit\r"
interact
2.在sh脚本里调用
#!/bin/bash
ip=$1
#传递参数
user=$2
password=$3
expect <>123.txt\n" }
expect "]#" { send "exit\n" }
#退出
expect eof
EOF
3.实战程序(传递公钥文件实现无密码登录)
#!/bin/bash
x=`cat .ssh/id_rsa.pub`
ip=$1
password=$2
if [ ! -f "/root/.ssh/id_rsa.pub" ];then
echo "文件不存在"
expect <
4.实战程序2
#!/bin/bash
expect <
PS :注意匹配为模糊匹配,可以不用写全,写个关键字即可
实战脚本
yum install expect -y
fsip=192.168.0.25
password=yxy7714707@
expect <
#脚本用途,传送本地的hosts文件给 对方
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前标题:expect两种用法-创新互联
浏览地址:http://scyanting.com/article/cdegpj.html