1. expect
命令说明
为避免反复调用,可以嵌套执行
相关命令:
spawn
:启动一个程序或进程
send
:给进程或程序返回结果
expect
:接受程序或进程输出
interact
:使用户处于进程或程序的交互状态,ssh登录后不自动登出
2. shell中嵌套expect命令
#!/bin/bash
sql_bck=/home/sql_bck
if [ ! -d $sql_bck ]
then
mkdir -p $sql_bck
fi
cptime=`date -d "-2 days" +%F`
/usr/bin/expect << EOF
set timeout 10
spawn scp
root@*.*.*.*:/mysql_weekly_bck/${cptime}_weekly_sql.tar.gz $sql_bck
expect "*passphrase*"
send "******\r"
expect eof
EOF