当前位置: 首页 > wzjs >正文

网站域名解析ip网络营销师课程

网站域名解析ip,网络营销师课程,WordPress点链接没反应,兰州疫情最新expect 安装入门手册 一、expect 与 tcl 简介 expect 是一款自动化交互套件,也是交互性很强的脚本语言,主要应用于执行命令和程序时,当系统以交互形式要求输入指定字符串时,它能实现交互通信,可帮助运维人员实现对成…

expect 安装入门手册

一、expect 与 tcl 简介

expect 是一款自动化交互套件,也是交互性很强的脚本语言,主要应用于执行命令和程序时,当系统以交互形式要求输入指定字符串时,它能实现交互通信,可帮助运维人员实现对成千上百台服务器的批量管理操作,是一款实用的批量部署工具。

expect 依赖于 tcl,而 Linux 系统通常不自带 tcl,因此需要手动安装 tcl 后再安装 expect。

二、安装前准备

(一)下载软件包

需要下载的软件包为 expect5.45.3.tar.gz 和 tcl8.6.1-src.tar.gz。其中,
tcl 的下载地址为
http://www.tcl.tk/software/tcltk/downloadnow84.tml,
可选择 tcl8.4.20-src.tar.gz;expect 的下载地址为https://sourceforge.net/projects/expect/files/latest/download,
对应版本为 expect5.45.tar.gz。

(二)放置软件包

将下载好的 expect 和 tcl 软件包放到 /usr/local/src 目录下。

三、安装步骤

(一)安装 tcl

  1. 解压 tcl:在 /usr/local/src 目录下,执行命令
[root@*** src]# tar -zvxf tcl8.6.1-src.tar.gz`。
  1. 进入相关目录:解压完成后,执行
    . ```bash
    . [root@*** src]# cd tcl8.6.1/unix
 进入 tcl 解压目录下的 unix 目录。3.  编译安装:执行```bash
[root@*** unix]# ./configure  --prefix=/usr/local/tcl --enable-shared

该命令将 tcl 安装到 /usr/local/tcl 目录并开启共享功能;之后执行`

[root@*** unix]# make && make install`
  1. 复制配置文件:在当前 unix 目录下,执行
`[root@*** unix]# cp tclUnixPort.h ../generic/`
  1. 将 tclUnixPort.h 复制到 generic 目录中,这在安装 expect 时会用到。

(二)安装 expect

  1. 解压 expect:在 /usr/local/src 目录下,执行`
    [root@*** src]# tar -zvxf expect-5.45.3.tar.gz

进入安装目录:执行`

[root@`***` src]# cd expect-5.45.3`

进入 expect 解压目录。

  1. 配置安装路径:执行
`[root@`***`expect-5.45.3]#./configure --prefix=/usr/local/expect --with-tcl=/usr/local/tcl/lib -with tclinclude=/usr/local/src/tcl8.6.1/generic/`

–prefix 指定 expect 的安装路径,
–with-tcl 告诉 configure 脚本 tcl 解释器位置,
–with-tclinclude 告诉脚本 tcl 头文件位置。

  1. 编译安装:执行
`[root@`xxx` expect-5.45.3]# make && make install`完成安装。
  1. 创建软连接:为了便于使用 expect,需要创建软连接,执行以下命令:
   `ls -s /usr/local/tcl/bin/expect  /usr/local/expect/bin/expect``ls -s /usr/local/tcl/bin/expect  /bin/expect``ls -s /usr/local/tcl/bin/expect  /usr/bin/expect`
  • 需要注意的是,expect 的命令实际在 Tcl 包里,所以要把 tcl 中的 expect 命令做软链接到 expect 包里。

四、安装测试

安装完成后,在终端执行[root@*** ~]# expect,若出现expect1.1>的提示,则说明安装成功。

五、expect 常用命令

  • spawn:交互程序开始,后面跟命令或者指定程序。

  • expect:等待一个进程的反馈,获取匹配信息,匹配成功则执行后面的程序动作。

  • send、exp_send:用于发送指定的字符串信息。

  • exp_continue:在 expect 中多次匹配时需要用到。

  • send_user:用来打印输出,相当于 shell 中的 echo。

  • exit:退出 expect 脚本。

  • eof:expect 执行结束并退出。

  • set:定义变量。

  • puts:输出变量。

  • set timeout:设置超时时间。

  • interact:退出自动化,开始允许用户交互。

六、应用场景

expect 凭借其自动化交互的特性,在多个领域都有广泛应用。在服务器管理方面,可用于批量登录多台服务器进行命令执行、配置修改等操作,极大减少运维人员的重复劳动;在软件部署时,能自动完成安装过程中的各种交互确认,实现软件的批量部署;在自动化测试领域,可模拟用户与程序的交互过程,对程序的交互功能进行测试;还能用于数据备份、系统监控等需要频繁人机交互的场景。

七、应用实例

(一)自动登录远程服务器

以下是一个使用 expect 自动登录远程服务器的脚本示例:

#!/usr/bin/expect -f
set timeout 30
spawn ssh [用户名]@[远程主机地址]
expect "password:"
send "[登录密码]\r"
interact

脚本说明:

  • #!/usr/bin/expect -f:指定脚本使用 expect 解释器执行。

  • set timeout 30:设置超时时间为 30 秒。

  • spawn ssh [用户名]@[远程主机地址]:启动 ssh 命令,连接到远程服务器,其中[用户名]为远程服务器的用户名,[远程主机地址]为远程服务器的 IP 地址或域名。

  • expect "password:":等待服务器提示输入密码。

  • send "[登录密码]\r":发送密码,\r表示回车,[登录密码]为登录远程服务器的密码。

  • interact:允许用户与远程服务器进行交互。

使用方法:将上述脚本保存为login_remote.exp,然后执行chmod +x login_remote.exp赋予脚本执行权限,最后运行./login_remote.exp即可自动登录远程服务器。

(二)批量执行命令

如果需要在多台远程服务器上执行相同的命令,可使用如下脚本:

#!/usr/bin/expect -f
set timeout 30
set host_list {[主机1地址] [主机2地址] [主机3地址]}
set username "[用户名]"
set password "[登录密码]"
set command "[需执行的命令]"foreach host $host_list {spawn ssh $username@$hostexpect "password:"send "$password\r"expect "#"send "$command\r"expect "#"send "exit\r"expect eof
}

脚本说明:

  • set host_list {[主机1地址] [主机2地址] [主机3地址]}:定义需要操作的远程服务器列表,[主机1地址][主机2地址][主机3地址]为服务器的 IP 地址或域名。

  • set username "[用户名]":设置登录用户名,[用户名]为远程服务器的登录用户名。

  • set password "[登录密码]":设置登录密码,[登录密码]为远程服务器的登录密码。

  • set command "[需执行的命令]":设置需要在远程服务器上执行的命令。

  • foreach host $host_list { ... }:遍历服务器列表,对每台服务器执行登录、执行命令、退出等操作。

  • expect "#":等待服务器返回命令提示符,不同系统的提示符可能不同,可根据实际情况修改。

  • send "exit\r":执行完命令后退出远程服务器。

  • expect eof:等待命令执行结束。

使用时,将脚本保存为batch_exec.exp,赋予执行权限后运行即可在多台服务器上批量执行指定命令。

(注:文档部分内容可能由 AI 生成)

http://www.dtcms.com/wzjs/4654.html

相关文章:

  • 新开的公司怎么做网站外包接单平台
  • 怎样做网站 网页短视频拍摄剪辑培训班
  • 专业的网站服务公司北京百度竞价
  • 网站 如何做用户统计金花关键词工具
  • 网络专题策划方案百度seo优化推广
  • 网站制作推广公司bt最佳磁力搜索引擎吧
  • 潍坊营销型网站制作百度app下载官方
  • 井研移动网站建设百度认证号码平台
  • 购物商城网站开发竞价推广平台有哪些
  • 织梦网站怎么做新闻导航页成都搜索优化整站优化
  • 免费做店招哪个网站好百度竞价点击神器奔奔
  • 广州电子商城网站建设网络营销ppt
  • 江门做网站公司开网络公司外贸网站seo
  • 美食网站建设项目预算营销技巧培训
  • 在哪个网站做推广比较好如何在互联网上做推广
  • 网站开发师是做什么的国内最好用免费建站系统
  • 西安市城乡建设管理局网站6app注册推广拉人
  • 网站access数据怎么做腾讯竞价广告
  • 阿里巴巴免费做国际网站东莞市优速网络科技有限公司
  • 知名网站建设定制长沙seo优化价格
  • 南昌网站建设 南昌做网站公司深圳最新消息
  • 淘掌门官方网站企业qq手机版
  • 网站如何做映射吉林seo刷关键词排名优化
  • 龙信建设集团有限公司网站百度风云榜小说排行榜历届榜单
  • 百度网站改版提交上海网站推广服务公司
  • html5怎么做简单的网站网站开发从入门到实战
  • 做暖暖视频网站大全页面设计漂亮的网站
  • 汕头站扩建什么时候完成投诉百度最有效的电话
  • 网站制作一个人可以做吗快速提高网站关键词排名优化
  • 杭州置地电商基地网站建设南宁seo排名外包