嗨,我有几百个主机的列表.我想在循环中使用ssh运行一个命令,如果我的ssh键设置正确,那么我执行一个命令,如果我遇到密码的挑战我想跳到下一个主机
所以我要说我有hosta和hostb以及hostc.我可以做一个ssh to hosta& hostc,但是hostb正在挑战我的密码.有没有办法检查主机是否会挑战我的密码?所以我的逻辑是
if I get challenge from $host; then skip host else ssh $host 'command' fi
我希望这是有道理的.提前感谢你
for host in host1 host2 host3; do ssh -o PasswordAuthentication=no $host command done
为了使它平行添加&
for host in host1 host2 host3; do ssh -o PasswordAuthentication=no $host command & done