在实际工作中,经常会被IP冲突搞的心烦意乱,也会导致工作阻塞,今天我给大家提供一个办法. (严禁抄袭哦,我会生气的)
首先穿插一下for循环和if语句的格式吧,以帮助大家理解。 For循环 for 条件语句 do 循环体 done If判断语句分为两种 单判断语句 if 条件;then ;结果;fi(这里的;是英文字符的) 多判断语句 if 条件 then 执行结果 elif 条件 then 执行结果 else 执行结果 Fi
好了,现在开始说正题!!! 新建一个shell文件,编辑如下脚本。
第一行 #!/bin/bash 表示该脚本使用的是哪种shell,毕竟shell也有很多种。例如Bourne shell、Korn shell、Cshell等。 第二行 是一个for 循环,将i初始值设为1,小于等于254,每次循环加1。一般来说,不建议使用255,所以这里设为254。 第三行 是for循环的do语句 第四行是 if 语句 ping -c 2 10.0.2.${i} >/dev/null 意思是与10.0.2网段的每一个${i}的值的地址ping,ping 2次。 >/dev/null 意思是重定向到一个空洞文件。就是相当于Windows上的回收站。当然也 可重定向到别的文件。怎么开心怎么来。 第五行是与if语句连用的then。 第六行是if后的结果,意思是如果ping通了就显示 ip 被使用。 如果第四行执行ping通了,那么就会显示ip被使用。 第七行是与if相反的意思。意思是ping不通过。 第八行的意思是如果ping不通,就显示ip 未被使用。 第九行是if语句的结束语句,代表if语句在一行这执行完毕。 第十行是do语句的结束语句。代表整个脚本执行到这结束。 那么我们就可以按照这个结果进行选择未被使用的ip,就能避免出现ip冲突的事了。 当然,我这边是让结果重定向到黑洞文件。结果只能当时看见,如果想长期保存,就重定向到一个你熟悉的文件里。以便以后查询。 下面开始说执行脚本的命令,注意咯! 第一种:在脚本所在目录下执行 source jcip.sh 执行结果: 第二种:先执行 su - 和 chmod 777 jcip.sh 再在脚本所在目录下执行 ./jcip.sh
两种办法怎么选择根据自己心情来。还是那句话哦。自己开心就好。
|