linux下expect环境安装

expect是交互性很强的脚本语言,可以帮助运维人员实现批量管理成千上百台服务器操作,很实用!
expect依赖于tcl,而linux系统里一般不自带安装tcl,所以需要手动安装

下载:expect-5.43.0.tar和tcl8.4.11-src.tar
下载地址:https://pan.baidu.com/s/1kVyeLt9
提取密码:af9p

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

(1)解压tcl,进入tcl解压目录,然后进入unix目录进行编译安装
[[email protected] src]# tar -zvxf tcl8.4.11-src.tar.gz
[[email protected] src]# cd tcl8.4.11/unix
[[email protected] unix]# ./configure
[[email protected] unix]# make && make

(2)安装expect
[[email protected] src]# tar -zvxf expect-5.43.0.tar.gz
[[email protected] src]# cd expect-5.43.0
[[email protected] expect-5.43.0]# ./configure --with-tclinclude=/usr/local/src/tcl8.4.11/generic --with-tclconfig=/usr/local/lib/
[[email protected] expect-5.43.0]# make && make install

(3)安装完成后进行测试
[[email protected] ~]# expect
expect1.1>
expect1.1>

----------------------------------------------------------------------------------------------------

下面结合shell脚本做简单测试:

从本机自动登录到远程机器192.168.1.200(端口是22,密码是:PASSWORD)
登录到远程机器后做以下几个操作:
1)useradd wangshibo
2)mkdir /opt/test
3) exit自动退出

[[email protected] tmp]# cat test-ssh.sh
#!/bin/bash
passwd=‘PASSWORD‘
/usr/local/bin/expect <<-EOF
set time 30
spawn ssh -p22 [email protected]
expect {
"*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$passwd\r" }
}
expect "*#"
send "useradd wangshibo\r"
expect "*#"
send "mkdir /opt/test\r"
expect "*#"
send "exit\r"
interact
expect eof
EOF

[[email protected] tmp]# sh test.sh
spawn ssh -p22 [email protected]
[email protected]‘s password:
Last login: Fri Sep 23 16:21:20 2016 from 192.168.1.23
[[email protected] ~]# useradd wangshibo
[[email protected] ~]# mkdir /opt/test
[[email protected] ~]# [[email protected] tmp]#

时间: 2024-10-03 09:35:02

linux下expect环境安装的相关文章

Linux下PHP环境安装具体步骤

Linux下 PHP环境安装 您需要以下安装包: 1.     字体引擎,freetype-2.1.10.tar.gz 2.     JPEG 图形库,jpegsrc.v6b.tar.gz 3.     PNG图形库,libpng-1.2.8-config.tar.gz 4.     数据压缩库,zlib-1.2.3.tar.gz 5.     加密算法扩展库,libmcrypt-2.5.7.tar.gz 6.     PHP的源码包,php-5.3.3.tar.gz6 确保您的安装linux环

linux下LNMP环境安装笔记

1 安装 Nginx 安装  sudo apt-get install nginx 启动  service nginx start 浏览器测试是否安装成功  http://192.168.2.173/ 2 安装 PHP5 sudo apt-get install php5-fpm 3 安装 MySQL 5 数据库 sudo apt-get install mysql-server mysql-client 4 让 PHP5 支持 MySQL sudo apt-get install php5-m

Linux下Django环境安装

可以用Linux自带的Python,安装的大概内容如下: 1.django install 2.django-admin stratproject csvt01 3.django-admin startapp blog 4.vim settings.py app add 下面-->'blog' 5.vim urls.py url(r'blog/index/$','blog.views.index') 6.vim blog/views.py from django.http import Http

Linux下Jdk的安装和jdk环境变量的设置

我们在Linux下安装系统软件的时候,经常遇到一些系统环境变量配置的问题.什么是环境变量?如何定制环境变量?我将在下面做一些介绍. 一.什么是环境变量?Linux是一个多用户的操作系统.多用户意味着每个用户登录系统后,都有自己专用的运行环境.而这个环境是由一组变量所定义,这组变量被称为环境变量.用户可以对自己的环境变量进行修改以达到对环境的要求. 二.定制环境变量 环境变量是和Shell紧密相关的,它是通过Shell命令来设置的.环境变量又可以被所有当前用户所运行的程序所使用.对于bash来说,

linux 下 VNC Server安装配置及 eclipse CDT C/C++ 开发环境搭建(我用的是阿里云服务器 ubuntu 12.04 64-bit,无图形化界面)

linux 下 VNC Server安装配置及 eclipse CDT C/C++ 开发环境搭建(我用的是阿里云服务器 ubuntu 12.04 64-bit,无图形化界面): 既然要用 eclipse 可视环境下开发,那首先要安装图形界面喽!!! 对开发者来说,个人认为 linux 选择界面优先选择顺序:Awesome(性能最好) > Xfce4 > gnome > unity-2d //////////////////////////////////////////////// 首先

hadoop搭建杂记:Linux下JDK环境变量的设置(三种配置环境变量的方法)

Linux下JDK环境变量的设置(三种配置环境变量的方法) Linux下JDK环境变量的设置(三种配置环境变量的方法) ①修改/etc/profile文件 如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性问题. vi /etc/profile 在profile文件末尾加入: JAVA_HOME=/usr/share/jdk1.5.0_05PATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_H

Linux下源码安装CodeBlocks

Linux下源码安装CodeBlocks qianghaohao(CodingNutter) 一. 安装平台说明: CentOs6.4-i686  gcc-4.4.7 二. 下载最新源码: http://www.codeblocks.org/downloads 在此安装的是最新版:Code::Blocks 16.01 三. 阅读官方安装说明文档: http://wiki.codeblocks.org/index.php/Installing_Code::Blocks_from_source_on

Linux下Qt的安装与配置

参考资料:http://www.cnblogs.com/emouse/archive/2013/01/28/2880142.html Linux 下编译.安装.配置 QT 下载qt 这里用的是4.7.0版本 qt-everywhere-opensource-src-4.7.0.tar.gz 拷贝并解压 这里我装的是Vmware上面的linux,所以windows与linux直接的文件共享,建议用samba,Samba我前面的笔记有介绍,这里不详谈. 拷贝到下面这个目录下 解压用 : tar zx

Linux下ORACLE客户端安装详解

1.首先去oracle官网下载以下安装包(http://www.oracle.com/technetwork/topics/linuxsoft-082809.html) instantclient-basic-linux.x64-11.2.0.3.0.zip instantclient-odbc-linux-11.2.0.3.0.zip instantclient-sdk-linux.x64-11.2.0.3.0.zip instantclient-sqlplus-linux.x64-11.2.