安装expect命令 两种方式

yum安装

yum -y install expect

手动安装

expect以及tcl版本

#!/bin/bash
oldpath=`pwd`
tar -zxf tcl8.4.20-src.tar.gz
#3.安装配置
cd tcl8.4.20/unix  
./configure --prefix=/usr/tcl --enable-shared  
make  
make install  
#注意:
#1、安装完毕以后,进入tcl源代码的根目录,把子目录unix下面的tclUnixPort.h copy到子录generic中。
cp ./tclUnixPort.h ../generic/

#(二)expect 安装 (需Tcl的库)

#2.解压缩源码包
cd $oldpath
tar xzf expect5.45.tar.gz  
#3.安装配置
cd expect5.45  
./configure --prefix=/usr/expect --with-tcl=/usr/tcl/lib --with-tclinclude=../tcl8.4.20/generic  
make  
make install  
ln -s /usr/tcl/bin/expect /usr/expect/bin/expect
ln -s /usr/tcl/bin/expect /usr/bin/expect

testcase

#!/bin/bash
#create hadoop user
user1=$1
useradd $user1

expect -c "
set timeout -1;
spawn passwd $user1;
  expect {
    *password:* {send -- hadoop
;exp_continue;}
    eof {exit 0;}    
}"
# 更改用户组为root
usermod -g root $user1
#test comand 
# id $user1
原文地址:https://www.cnblogs.com/rocky-AGE-24/p/7256800.html