Bash 检查两个 ip 地址的脚本

Bash script to check two ip addresses

我正在执行的检查两个 IP 地址的 bash 脚本有问题。

#!/bin/bash
ping -c4 1.1.1.1 > /dev/null
if [ $? != 1 ]
then
echo "Device1 is up"
else
echo "Device1 is down

工作正常,但我希望它检查第二个地址,然后根据结果执行命令,即

#!/bin/bash
ping -c4 1.1.1.1 > /dev/null
if [ $? != 1 ]
then
echo "Device1 is up"
else
ping -c4 2.2.2.2 > /dev/null
if [ $? != 1 ]
then
echo "Device2 is up"
else 
echo "Device 2 is down"
fi

但它不起作用我得到

line 14: syntax error: unexpected end of file

你需要一个最后的 "fi" 来关闭第一个,如果...

当你嵌套 "if" 语句(一个在另一个里面)时,你必须有一个结束 "fi" for each if。