千家信息网

expect 两种用法

发表于:2024-11-16 作者:千家信息网编辑
千家信息网最后更新 2024年11月16日,yum install expect -y#先安装expect1.测试用法#!/usr/bin/expect#解释语言,这边运行要以./运行,bash运行会报错spawn ssh root@192.1
千家信息网最后更新 2024年11月16日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=$2password=$3expect <>123.txt\n" }     expect "]#" { send "exit\n" }         #退出expect eof EOF 

3.实战程序(传递公钥文件实现无密码登录)

#!/bin/bashx=`cat .ssh/id_rsa.pub`ip=$1password=$2if [ ! -f "/root/.ssh/id_rsa.pub" ];then  echo "文件不存在"expect <

4.实战程序2

#!/bin/bash expect <

PS :注意匹配为模糊匹配,可以不用写全,写个关键字即可
实战脚本

yum install expect -yfsip=192.168.0.25password=yxy7714707@expect <

#脚本用途,传送本地的hosts文件给 对方

0