Ping:名称或服务未知

Ping:名称或服务未知

所以我正在创建这个 bash 脚本,但它给了我一个错误,**名称或服务未知。**

在此输入图像描述

代码是:

#!/bin/bash
if [ "$1" == "" ]
then
echo "Hello"
echo "Bye"
else
for x in 'seq 1 254' ;  do
ping -c 1 $1.$x
done
fi

答案1

您在 seq 语句中使用单引号而不是反引号。

for x in 'seq 1 254'

将产生 3 项:seq, 1, 254

for x in `seq 1 254`

将得出:1、2、3、4、5、6 等。

单引号用于文字,反引号用于命令替换。

答案2

您可能想要研究可以执行 ping 扫描的现有工具,而不是自行开发。nmap例如使用它的 -sn 选项。https://linux.die.net/man/1/nmap

相关内容