加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell脚本连接并重启远程服务器的方法

发布时间:2020-12-15 05:16:21 所属栏目:安全 来源:网络整理
导读:shell重启远程服务器 #connServer.sh 登陆服务器脚本 本地文件#!/usr/bin/expectexpect -c "spawn ssh ali@192.168.1.1expect {"*assword" {set timeout 30; send "123456r";}"yes/no" {send "yesr"; exp_continue;}}send "cd /home/ali/demoProj

shell重启远程服务器

#connServer.sh 登陆服务器脚本 本地文件
#!/usr/bin/expect
expect -c "
spawn ssh ali@192.168.1.1
expect {
"*assword" {set timeout 30; send "123456r";}
"yes/no" {send "yesr"; exp_continue;}
}
send "cd /home/ali/demoProject r"     #根据系统而定 maybe /User/ali
send "sh reboot.sh r"
expect eof"

echo "重启成功!"

#reboot.sh 重启脚本 该文件是放在远程服务器的文件
#!/usr/bin/bash
ps aux | grep /home/ali/demoProject/index.js | awk '{print $2}' | xargs kill
ps -ef | grep /home/ali/demoProject/index.js
echo "success reboot!"

#下面这条命令以绝对路径启动 方便以后kill 该进程

nohup node /home/ali/demoProject/index.js &

不知道什么原因,如果想再connecServer.sh中发送reboot.sh 的脚本命令,

有一个问题 : $2 没了. 奇迹般的消失在命令行中.

现在采取折中的办法就是将这条带有$2的命令,放在服务器端单独一个文件里,在本地执行这个reboot.sh文件.

以上所述是小编给大家介绍的shell脚本连接并重启远程服务器,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程小技巧网站的支持!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读