shell脚本远程连接服务器并执行指定的shell脚本

1.脚本名称demo.sh

#!/bin/bash

yum -y install expect

expect -c "

spawn scp -r /Users/yunshuodeng/Work/mydocker/app/provider/power-dubbo-provider-1.0-SNAPSHOT.jar [email protected]:$1

expect {

    \"*assword\" 

                {

                    set timeout 300; 

                    send \"hntx123456\r\";

                }

    \"yes/no\" 

                {

                    send \"yes\r\"; exp_continue;}

                }

expect eof"


expect -c "

spawn scp -r /Users/yunshuodeng/Work/mydocker/app/consumer/power-dubbo-consumer-1.0-SNAPSHOT.jar [email protected]:$1

expect {

    \"*assword\"

                {

                    set timeout 300;

                    send \"hntx123456\r\";

                }

    \"yes/no\"

                {

                    send \"yes\r\"; exp_continue;}

                }

expect eof"


expect -c "

spawn scp -r /Users/yunshuodeng/Work/mydocker/app/consumer/power-dubbo-api-1.0-SNAPSHOT.jar [email protected]:$1

expect {

    \"*assword\"

                {

                    set timeout 300;

                    send \"hntx123456\r\";

                }

    \"yes/no\"

                {

                    send \"yes\r\"; exp_continue;}

                }

expect eof"


expect -c "

spawn ssh [email protected]

expect {

    \"*assword\"

                {

                    set timeout 300;

                    send \"密码\r\";

                }

    \"yes/no\"

                {

                    send \"yes\r\"; exp_continue;

}

}


expect \"*#\"

send \"cd $1\r\"


expect \"*#\"

send \"./$2\r\"


expect \"*#\"

send \"exit\r\"


expect eof"


echo "success"


2.执行shell

./demo.sh /home/demo mymkdir.sh


猜你喜欢

转载自blog.51cto.com/suyanzhu/2382821