scp的时候需要输入密码
安装expect
deplay.sh
安装expect
#!/usr/bin/expect
set timeout 20
if { [llength $argv] < 2} {
puts "Usage:"
puts "$argv0 local_file remote_path"
exit 1
}
set local_file [lindex $argv 0]
set remote_path [lindex $argv 1]
set passwd 9h8a5@ct#!
set passwderror 0
spawn scp $local_file $remote_path
expect {
"*assword:*" {
if { $passwderror == 1 } {
puts "passwd is error"
exit 2
}
set timeout 1000
set passwderror 1
send "$passwd\r"
exp_continue
}
"*es/no)?*" {
send "yes\r"
exp_continue
}
timeout {
puts "connect is timeout"
exit 3
}
}
deplay.sh
cd /local/akazam/server/apache-tomcat-7.0.54
processname="tomcat"
for pid in $(ps aux |grep $processname |grep -v grep|awk '{print $2}'); do
kill -9 $pid
sleep 5
done
dirname=`date +%Y-%m-%d-%H:%M:%S`
mkdir sht_backup/$dirname
mv webapps/sht_android_mall* sht_backup/$dirname/.
rm -rf work/Catalina/localhost/*
cp ~/$1 webapps/sht_android_mall.war
./bin/startup.sh
tail -f logs/catalina.out