用于查找网络IP范围的Shell脚本(Bash)
我正在尝试创建一个shell脚本来自动查找网络的IP地址范围。到目前为止,我跑了comamnd:
ifconfig | awk '/broadcast/'
这会创建输出:
inet 192.168.1.228 netmask 255.255.255.0 broadcast 192.168.1.255
我希望shell脚本能够提供所提供的数字(我相信这足以找到一系列IP地址,但如果我错了就纠正我)并且基本上只输出一个范围,所以对我来说我认为它会是以下任何一种选择:
192.168.1.0/24
192.168.1.0-255
192.168.1.*
如果这是找到IP范围的方法,那么任何人都可以帮我弄清楚如何将它显示为一个简单的输出,就像我之前提到的三个选项之一一样?如果这不是找到IP范围的方法,请您解释一下如何以最准确的方式实现这一目标。我正在尝试更多地了解网络和shell脚本,因此任何帮助都会得到很大的帮助。
答案 0 :(得分:1)
好吧,如果您打算使用ifconfig,那么它应该是这样的:
B21
如果您打算使用“ip addr show”,那么只需根据收到的数据更正PARAMS计算。无论如何,只有这一行使用外部命令,脚本的其余部分是纯粹的bash。 我希望它有所帮助。