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

ssh – 远程重启多台机器

发布时间:2020-12-15 18:41:03 所属栏目:安全 来源:网络整理
导读:我需要远程重启多台机器.通常我只是发出 for host in hostlist;do ssh ${host} 'sudo shutdown -r now';done 但是我希望在重启之前给用户一些时间.但是,即使我使用ssh会话也不会断开连接: ssh -f 'sudo shutdown -r +5 ;disown' 我收到一条错误消息: bash:
我需要远程重启多台机器.通常我只是发出
for host in <hostlist>;do ssh ${host} 'sudo shutdown -r now';done

但是我希望在重启之前给用户一些时间.但是,即使我使用ssh会话也不会断开连接:

ssh -f 'sudo shutdown -r +5 &;disown'

我收到一条错误消息:

bash: -c: line 0: syntax error near unexpected token ;' bash: -c: line 0:sudo shutdown -r +5 &;disown’

有什么建议?

如错误消息所述,您的命令中存在语法错误.这是由于一个有点令人惊讶的事实,&不是shell命令的一部分,而是命令之间的分隔符(如; is).虽然两者都是命令分隔符&对左侧的命令有额外的影响.这当然也让我感到困惑,我经常犯同样的错误.一旦你知道它,它很容易修复.

修复是不写&amp ;;而是根据你的意图写两个分隔符中的一个. (并且在大多数情况下,其中一个人写了&amp ;;意图是只写和&).

这应该工作:

ssh server 'sudo shutdown -r +5 & disown'

(编辑:李大同)

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

    推荐文章
      热点阅读