단 한 줄의 bash 코드(자체 반복)로 컴퓨터를 다시 시작하는 방법을 아는 사람이 있습니까? 세부 정보는 텍스트 파일, 즉 각 컴퓨터의 IP 주소에서 가져옵니다. 스크립트가 컴퓨터의 IP 주소를 얻으면 들어가서 컴퓨터를 재부팅합니다. 나는 무엇을 해야 합니까?
답변1
옵션 1# for 루프 사용
for host in $(< inputfile.txt );
do
ssh $host shutdown -r now
done
옵션 2# xargs 사용
xargs -n1 -I{} echo ssh {} shutdown -r now < inputfile.txt
참고: 다음이 필요합니다.SSH 비밀번호 없는 로그인또는 입력 파일에 나열된 각 호스트의 비밀번호를 묻습니다.
답변2
#!/usr/bin/env bash
for SERVER in `cat servers.lst`
do
ssh -tttq -o StrictHostKeyChecking=no -o CheckHostIP=no -o ConnectTimeout=5 $SERVER "sudo su -c 'uname -n;uptime;reboot' "
done