最近搞一个自动配置,所以要写一些bash,用到了expect , 发现没有那个命令,所以自己安装了一下,过程如下
1 . 首先检查tcl 安装了没有
rpm -qa|grep tcl
结果显示如下: tcl-8.4.13-4.el5
tclx-8.4.0-5.fc6
结果表示已经安装了 tcl 但是没有安装tcl0-devel 所以就要安装
2. 安装tcl-devel
首先查一下linux 版本和操作系统的位数
/proc/version
结果如下 Linux version 2.6.18-194.el5 ([email protected]) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48))
x86 redhat 4.1
下载文件如下有 tcl-devel-8.4.13-4.el5.x86_64.rpm
执行安装:rpm -ivh tcl-devel-8.4.13-4.el5.x86_64.rpm 安装成功
3. 安装expect :
下载expect 包,在附件中已有
先要查看tcl开发包安装的位置 我的就安装在/usr/local/bin 下,有些系统不一样,是装在/usr/bin下
解开expect-5.43.0.tar.gz 包
./configure --with-tcl=/usr/lib64 --with-tclinclude=/usr/include/tcl-private/generic
make
make install
完成
4 . 编写脚本运行进运行出错:-bash: ./scm.sh: /bin/sh/expect: bad interpreter:
解决这个问题的办法是:修改文件头 :#!/usr/local/bin/expect
这样OK