shell 实现统计一个网段的IP和mac对应关系并保存到文件mac.txt

#!/bin/bash
#function: Count the relationship between ip and mac in a C subnet
#created by comk at Mar.12.2016
quitScript() {
                echo "User Interrupt ,Quit..."
              }
trap ‘quitScript; exit 5‘ SIGINT #### support ctrl+c  interrupt

read -p "请输入你要测试的网段(如192.168.0.0):" string
a=`echo $string|cut -d"." -f1-3`
for i in {1..254};do
    ping -c 1 $a.$i
done
exec arp -a | cut -d" " -f2,4 | tr -s [\(\)] [" "" "] > mac.txt
时间: 2024-12-06 17:08:47

shell 实现统计一个网段的IP和mac对应关系并保存到文件mac.txt的相关文章

shell 脚本:ping一个网段的所有ip 和 隔一秒显示当前的时间

环境是 centos7  /bin/bash 注意在复制测试时,务必将示例中的ip网段更改为自己的ip网段. ctrl+z可以将脚本打入后台,然后查看进程kill掉. 1. #!/bin/bash for i in {1..254} #定义1到254 do HOST=192.168.168.$i ping -c 2 $HOST &>/dev/null if [ $? -eq 0 ];then  # -eq 判断返回值是否为0 $?为0表示执行结果正确 echo "$HOST IS

统计一个网段以及相应区段存活和宕机的ip

#!/bin/bash . /etc/init.d/functions start=$1 up=0 down=0 #add color function  function color() { RED_COLOR='\E[1;31m' GREEN_COLOR='\E[1;32m' YELLOW_COLOR='\E[1;33m' BLUE_COLOR='\E[1;34m' RES='\E[0m' } #judge usage function function judge() {  #a xarg

统计一个C类网段可用IP

[需求描述] 统计10.240.210.171-180/24段的可用IP [思路方法] 利用ping命令,如果结果返回为真(即[ $? -eq "0" ]),证明该IP对应的主机或终端是存活的,之后将对应IP追加到host_alive_lan.txt文件中,否则则将其追加到host_dead_lan.txt文件中,host_dead_lan.txt文件中的IP即为可用IP,用于分配给新机器. [code] #!/bin/bash . /etc/init.d/functions >

Linux下shell脚本中信号捕获和函数练习脚本之ping一个网段

该脚本主要的目的是练习在Linux bash脚本中捕获信号,顺便练习一下函数的使用,还有就是终止一个正在运行的程序后,该程序打开的文件的后续处理问题等等! 脚本功能: ping一个网段内的IP,检测哪些IP在线,哪些IP不在线 练习的命令: 1.mktemp 用法:#mktemp 1117.www.qixoo.qixoo.com/Path/To/SomeFile.XXX 其中XXX可以为多个,是由系统随机生成的一段字符串 -d  创建为目录 2.ping 测试网络是否通畅 用法:#ping [-

shell编程--统计代码行数

引:之前都太懒,没有及时把学到的知识总结到博客里.最近在学shell编程,正好作为养成写博客习惯的开端.平时我们都会遇到一个问题,写完一个项目后,想统计一下总的代码量,当代码文件很多时,一个个点开代码文件,然后把代码行数加起来是一件很费神的事.shell可以用短短几行代码就搞定这个问题. 一 shell源码(code_linage.sh): 1 #!/bin/bash 2 3 if [ $# -eq 1 ] && [ -d $1 ] 4 then 5 find $1 -type f -na

ping一个网段内所有命令的批处理命令

for /l %%p  in (x,1,y) do @ping 192.168.1.%%p -n 1  >> c:\1.txt 保存为1.bat,其中比如ping 192.168.1.1~192.168.1.255,则x为1,y为255. 输出在C盘下面1.txt.每次ping一个包. 然后再在命令行下面运行arp -a 即可查看该网段内所有主机mac——ip对应表 ping一个网段内所有命令的批处理命令

centos7 之dhcp服务为多个网段分配ip地址

实验目的:通过一台DHCP服务器实现给多网段分配IP地址 在GNS3上构建如上图的拓扑结构图配置:在SW2二层交换机上:SW2#conf tSW2(config)#no ip routing //关闭路由功能SW2(config)#vlan 10,20,80 //创建10,20,80的vlanSW2(config-vlan)#int f1/1 SW2(config-if)#switchport mode accessSW2(config-if)#switchport access vlan 10

理解 Linux shell 中的一个方言:2>&1

理解 Linux shell 中的一个方言:2>&1 2016-11-14 杜亦舒 前言 在使用 linux 命令或者 shell 编程时,这个用法常会遇到 2>&1 如果是刚开始接触Linux,这个东西的确不好理解,因为他没有直观的含义,不像一个命令,例如 cp是 copy 的简写,很好记. 我以前刚用Linux时就对这个东西迷糊了一段时间,今天刚好看到一篇文章介绍他,感觉很有必要总结出来,分享给还不是很理解这个方言的朋友. 下面看一个命令示例,然后分析下他是如何工作的: l

统计一个字符串中的单词的个数,并打印各个单词

/*测试数据:Shen zhen is a beautiful city!*/ /*运行结果:Word:6 Shen zhen is a beautiful city!*/ #include<stdio.h> #define SIZE 1000 void wordCount(char *str) { int count = 0, flag = 0; char *p = str; while (*p != '\0'){ while (*p == 32){ if (*(p + 1) == 0){/