여러 컴퓨터를 원격으로 재부팅해야합니다. 일반적으로 나는 단지 발행
for host in <hostlist>;do ssh ${host} 'sudo shutdown -r now';done
그러나 다시 시작하기 전에 사용자에게 시간을주고 싶습니다. 그러나 ssh 세션은 내가 사용하더라도 연결이 끊어지지 않습니다.
ssh -f 'sudo shutdown -r +5 &;disown'
오류 메시지가 나타납니다.
bash : -c : line 0 : 예기치 않은 토큰
;' bash: -c: line 0:sudo shutdown -r +5 &; disown ' 근처의 구문 오류
어떤 제안?
1
"&"를 사용하여 종료 명령을 백그라운드로 보내려고합니다. 쉘이 "&"를 명령 분리 자로 해석하는 경우 "disown"명령이 작동하도록 백그라운드로 쉘을 보내는 방법에 대해 잘 모르겠습니다.
—
Horace
&문자는 백그라운드에서 왼쪽에 명령을 전송한다. 그것이와 다른 점입니다 ;.