要编写一个Linux Bash脚本来检测局域网中哪些计算机处于打开状态,可以使用nmap
工具。nmap
是一个网络扫描和安全审计工具,可以用来检测网络中哪些设备已打开。
首先,确保已经安装了nmap
。在终端中输入以下命令来安装:
sudo apt-get install nmap
接下来,创建一个名为check_devices.sh
的脚本文件,并在其中输入以下内容:
#!/bin/bash
# 获取局域网子网掩码
subnet_mask=$(ifconfig | grep -Eo 'inet addr:192.168.1.[0-9]{1,3}' | awk '{print $2}')
# 使用nmap扫描局域网中的设备
nmap -sn $subnet_mask/24 | awk '/^Nmap/{ip=$NF}/^MAC/{print ip,$NF}'
保存文件后,给予脚本执行权限:
chmod +x check_devices.sh
现在,您可以运行脚本来检测局域网中哪些计算机处于打开状态:
./check_devices.sh
脚本将输出局域网中所有已打开的设备的IP地址和MAC地址。
注意:nmap
工具需要在您的系统上安装和配置。如果您的系统没有安装nmap
,请按照上述步骤进行安装。此外,脚本中的子网掩码(192.168.1.0/24
)可能需要根据您的局域网配置进行更改。
领取专属 10元无门槛券
手把手带您无忧上云