expect:
#!/usr/bin/expect
package require Expect
set timeout 3600
spawn sudo -u wasadmin bash
sleep 2
expect -gl "*Password*"
send "[lindex $argv 2]/r"
sleep 2
expect -re {#|$}
send "cd /tmp//r"
sleep 1
expect -re {#|$}
send "cp -r [lindex $argv 0] [lindex $argv 1]/r"
sleep 3
expect -re {#|$}
send "cd [lindex $argv 1]/[lindex $argv 0]/r"
sleep 1
expect -re {#|$}
send "perl deploy.ipl/r"
sleep 2
expect -re {#|$}
send "exit/r"
expect eof
winscp:
# Automatically answer all prompts negatively not to stall
# the script on errors
option batch on
# Disable overwrite confirmations that conflict with the previous
option confirm off
# Connect using a password
open scp://%1%:%2%@cndal413vl.cn.fid-intl.com -timeout=3600
# Change remote directory
cd /tmp/
call mkdir FSKKDeploy`date +%Y%m%d`
call cd FSKKDeploy`date +%Y%m%d`
# Force text mode transfer
option transfer ascii
put deploy.ipl
put changeUser.sh
chmod 711 changeUser.sh
# Force binary mode transfer
option transfer binary
put %3%/FSKKWebApp/target/FSKKWebApp-1.0.war
put %3%/Xmlaccess.xml
put %3%/FSKKSharedApp
put %3%/FSKKLookAndFeel
#call remote command
call ./changeUser.sh FSKKDeploy`date +%Y%m%d` %4% %2%
#remove temp files
cd /tmp/
call rm -r FSKKDeploy`date +%Y%m%d`
# Disconnect
close
# Exit WinSCP
exit