CentOS7上Expect 5.45版本安装成功案例分享

需积分: 50 7 下载量 31 浏览量 更新于2025-01-03 收藏 252KB ZIP 举报
资源摘要信息: "expect-5.45-14.el7_1.x86_64.zip 在 centos7 上测试通过" 知识点详细说明: 1. CentOS7操作系统: CentOS(Community ENTerprise Operating System)是基于Red Hat Enterprise Linux(RHEL)源代码重新编译的免费企业级操作系统。它与RHEL具有高度的兼容性,是众多企业和开发者喜爱的开源Linux发行版之一。CentOS7是该系列的一个版本,提供了稳定、安全的系统环境,适用于服务器部署和网络应用。 2. expect工具: expect是一个用于自动化控制交互式应用程序的编程语言。它常用于简化那些需要人工输入命令的重复性任务,如自动化测试脚本、远程登录、自动化安装程序等。expect基于Tcl(Tool Command Language)语言,它能够让用户编写脚本,自动对程序的输出做出预期的响应,从而实现程序之间的自动交互。 3. yum包管理器: yum(Yellowdog Updater, Modified)是Red Hat及其衍生版(包括CentOS)中广泛使用的包管理器。它可以处理包的安装、删除、更新以及查询等操作,尤其在处理依赖关系时能自动解决和安装必需的包。在提供的描述中,yum被用于下载expect包而不会立即安装它,这可以通过添加 --downloadonly 选项来实现,并指定了本地目录 ./ 作为下载的存放位置。 4. rpm命令: rpm(Red Hat Package Manager)是Red Hat及其衍生版中用于安装、卸载、查询和管理rpm包的工具。在安装rpm包时,可以使用 rpm -ivh 命令,其中“i”表示安装(install),“v”表示显示详细信息(verbose),“h”表示显示安装进度(hash)。在上述描述中,执行了rpm -ivh命令来安装之前使用yum下载的expect包。 5. 文件压缩包: 提供的文件信息中包含了一个.zip格式的压缩包。在Linux环境下,.zip文件相对少见,因为Linux系统通常使用.tar或.tar.gz等格式来打包和压缩文件。然而,Windows系统中.zip文件较为常见,因此在跨平台文件传输或从Windows环境获取资源时,.zip格式是常见的选择。 6. 编写expect脚本: 编写expect脚本通常包括对特定程序输出的监控,以及根据这些输出进行相应的操作。expect脚本的基本结构包括一段初始化代码,然后是一个或多个expect和send命令对。expect命令用于等待特定的字符串在输出中出现,send命令则用于模拟用户输入的响应。 7. 标签中的“tcl expect linux 自动化”: 这代表了本资源内容与Tcl编程语言、expect工具、Linux操作系统以及自动化技术紧密相关。这些关键词有助于标识资源的应用场景和相关技术领域,同时便于在搜索引擎或文档管理系统中进行分类和检索。 8. expect版本信息: 在标题中提及的expect-5.45-14.el7_1.x86_64.zip表示这是一个针对x86_64架构、适用于EL7(Enterprise Linux 7,即CentOS7)的expect程序包。版本号5.45-14表示其特定的版本和更新号,这对于开发者和系统管理员来说是一个重要的参考信息,因为不同版本的expect程序可能有不同的功能和修复。 9. 在CentOS7上安装expect: 从描述中可以看出,在CentOS7上安装expect涉及到了几个步骤:首先使用yum下载expect包,然后通过rpm命令安装下载的包,最后运行expect命令来验证安装是否成功。这些步骤是典型的Linux软件安装流程,适用于大多数基于rpm的Linux发行版。 10. 资源的可测试性: 标题中提到“测试通过”,意味着该expect包或相关的安装步骤已经在CentOS7上成功执行,并且功能表现正常。这为其他用户提供了信心,相信他们可以使用相同的步骤在自己的CentOS7系统上安装和使用expect。

#!/bin/sh #安装插件 cd /root/mysql if test -e ./sharutils-4.6.1-2.x86_64.rpm then echo 'sharutils开始安装...' rpm -ivh sharutils-4.6.1-2.x86_64.rpm echo 'sharutils安装完成...' else echo 'sharutils文件不存在!' exit fi #安装msql8 if test -e ./mysql8.0.19_64-636.sh then if test -e ./mysql8.0.19_64-636.sh.sha256 then echo '准备安装mysql8' sh ./mysql8.0.19_64-636.sh else echo 'mysql8.sha256文件不存在!' exit fi else echo 'mysql8.sh文件不存在!' exit fi if [ $? -eq 0 ]; then echo 'mysql安装完成...' else echo 'mysql安装失败!' exit fi #执行重启不需验证 /topwalk/baseapp/bin/mysqld restart --skip_grant_tables #安装tcl sh ./tcl-install.sh if [ $? -eq 0 ]; then echo 'tcl安装完成...' else echo 'tcl安装失败!' exit fi #安装expect sh ./expect-install.sh if [ $? -eq 0 ]; then echo 'expect安装完成...' else echo 'expect安装失败!' exit fi #创建mysql用户,授权 sh ./initdb.sh if [ $? -eq 0 ]; then echo 'mysql用户创建,授权完成...' else echo 'mysql用户创建,授权失败!' exit fi ln -s /topwalk/baseapp/bin/mysqld /etc/init.d/ sed -i '/MYSQL_HOME/d' /etc/profile echo "export MYSQL_HOME=/topwalk/baseapp/mysql" >>/etc/profile echo 'export PATH=$PATH:$MYSQL_HOME/bin' >>/etc/profile systemctl enable mysqld source /etc/profile service mysqld restart #初始化库 /topwalk/baseapp/mysql/bin/mysql -udms -ptRstOpwalkroot0823 < topsql/CREATE_TOPBASIC.sql /topwalk/baseapp/mysql/bin/mysql -udms -ptRstOpwalkroot0823 < topsql/CREATE_TOPDMS.sql /topwalk/baseapp/mysql/bin/mysql -udms -ptRstOpwalkroot0823 < topsql/CREATE_TOPUIS.sql #初始化表 /topwalk/baseapp/mysql/bin/mysql -udms -ptRstOpwalkroot0823 TOPBASIC < topsql/TOPBASIC.sql /topwalk/baseapp/mysql/bin/mysql -udms -ptRstOpwalkroot0823 TOPDMS < topsql/TOPDMS.sql /topwalk/baseapp/mysql/bin/mysql -udms -ptRstOpwalkroot0823 TOPUIS < topsql/TOPUIS.sql #安装nginx cp -dpRf ./nginx /usr/local/ useradd nginx -m -d /usr/local/nginx/ -s /bin/bash chown -R nginx.nginx /usr/local/ngi

209 浏览量
280 浏览量