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' 我收到一条错误消息:
有什么建议?
如错误消息所述,您的命令中存在语法错误.这是由于一个有点令人惊讶的事实,&不是shell命令的一部分,而是命令之间的分隔符(如; is).虽然两者都是命令分隔符&对左侧的命令有额外的影响.这当然也让我感到困惑,我经常犯同样的错误.一旦你知道它,它很容易修复.
修复是不写& ;;而是根据你的意图写两个分隔符中的一个. (并且在大多数情况下,其中一个人写了& ;;意图是只写和&). 这应该工作: ssh server 'sudo shutdown -r +5 & disown' (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- angularJS
- 如何在转换为Unix时指定时区(UTC)? (Python)
- Vim自动命令触发器打开“无”
- bootstrap之jumbotron&thumbnail&progressBar样式
- WebService复杂类型数据传输(dom4j方式)
- Scala存在 – 类型不匹配,无法推断T =:= T.
- 如何在Dockerfile中为Jenkins for LDAPS添加SSL自签名证书?
- Angular和Horizon用于实时应用
- 使用.NET向webService传double、int、DateTime 服务器得到的
- Angular4_CSS控制input输入变大写,并且不影响placeholder的