首页 > 解决方案 > 重击 | ssh 返回值

问题描述

我正在编写一个 bash 脚本,该脚本通过 hosts.list 中定义的许多主机并在它们在线时返回。我想做同样的事情,但使用 ssh。如果连接和登录成功,如何从 ssh 返回一个值,如布尔值。

#!/bin/bash

File="hosts.list"
Hosts=$(cat $File)
declare -i deadhosts
$deadhosts = 0
declare -i counter
$counter = 0
for Host in $Hosts
do
        if ! ping -c 1 -s 1 -W 1 "$Host" 1>/dev/null 2>&1; then
                deadhosts=$((deadhosts+1))
        else
                echo $Host
        fi
        counter=$((counter+1))
done

echo "Mission success"
echo "Scanned Hosts: $counter Dead Hosts: $deadhosts"

标签: linuxbashshellunix

解决方案


有一个问题要求同样的事情:

如何创建一个 bash 脚本来检查 SSH 连接?

您还可以在那里找到信息:

https://www.golinuxcloud.com/test-ssh-connection/


推荐阅读