scpmysql.sh

 

#!/usr/bin/expect -f
#spawn scp /mysqlbak/210.34.$(date +%F.%H).gz 
root@211.152.33.3:/mysqlbak/210.34/
#spawn scp /mysqlbak/210.34.2010-02-23.16.gz 
root@211.152.33.3:/mysqlbak/210.34/
spawn /root/scpdate.sh
set timeout 3000
expect "root@211.152.32.3's password:"
set timeout 3000
send "xxxxxx"
set timeout 3000
send "exit\r"
expect eof

 

 scpdate.sh

scp /mysqlbak/210.34.$(date +%F.%H).gz root@211.152.33.3:/mysqlbak/210.34/

 

其实可以放在一起的 不过spawn似乎不支持$(date)这种类似的内嵌命令行 shell没有~于是只能分开来或许还能有更好的办法。