Rumah > Soal Jawab > teks badan
while read $HOSTNAME
do
ssh root@$HOSTNAME "poweroff"
done < host.log
host.log 中的内容:
192.168.122.1
192.168.122.2
192.168.122.3
机器配置过ssh互信
执行那个后发现每次只能关闭一台机器脚本就退出了。需要再次执行才能关闭后面的机器,请问是为什么?谢谢
漂亮男人2017-04-25 09:03:06
Atau tulis ssh -n
. Sebab ini berlaku ialah ssh membaca seluruh stdin anda.
Jadi saya cuba untuk tidak menggunakan while + redirection untuk membaca data Jika saya mahu membaca, saya juga menggunakan deskriptor fail lain untuk membaca. stdin boleh dibaca dengan mudah oleh arahan lain.
黄舟2017-04-25 09:03:06
perl -ne 'system q/ssh/, q/root@/.$_,q/poweroff/' host.log #Ini sepatutnya berfungsi
怪我咯2017-04-25 09:03:06
去掉 sambil membaca $HOSTNAME中的$
sambil membaca HOSTNAME
lakukan
ssh root@$HOSTNAME "poweroff"
selesai < hos.log