天天看點

檢測區域網路中未使用的IP位址

臨時檢測區域網路中未使用的IP位址

<code>#!/bin/bash</code>

<code>echo</code> <code>"檢測區域網路中未使用的IP位址2015"</code>

<code>echo</code> <code>""</code>

<code>    </code><code>processbar() {  </code>

<code>      </code><code>local</code> <code>current=$1; </code><code>local</code> <code>total=$2;  </code>

<code>      </code><code>local</code> <code>maxlen=80; </code><code>local</code> <code>barlen=66; </code><code>local</code> <code>perclen=14;  </code>

<code>      </code><code>local</code> <code>format</code><code>=</code><code>"%-${barlen}s%$((maxlen-barlen))s"</code>  

<code>      </code><code>local</code> <code>perc=</code><code>"[$current/$total]"</code>  

<code>      </code><code>local</code> <code>progress=$((current*barlen</code><code>/total</code><code>))  </code>

<code>      </code><code>local</code> <code>prog=$(</code><code>for</code> <code>i </code><code>in</code> <code>`</code><code>seq</code> <code>0 $progress`; </code><code>do</code> <code>printf</code> <code>'#'</code><code>; </code><code>done</code><code>)  </code>

<code>      </code><code>printf</code> <code>"\r$format"</code> <code>$prog $perc  </code>

<code>    </code><code>}  </code>

<code>      </code> 

<code>    </code><code>for</code> <code>i </code><code>in</code> <code>`</code><code>seq</code> <code>1 254`; </code><code>do</code>  

<code>      </code><code>processbar $(($i*100</code><code>/254</code><code>)) 100  </code>

<code>   </code> 

<code>    </code><code>/usr/bin/arping</code>  <code>-I eth0 -c 1  192.168.10.$i  | </code><code>grep</code> <code>-B 2 </code><code>"Received 0"</code> <code>|</code><code>head</code> <code>-1  &gt;&gt; mac$(</code><code>date</code> <code>+%Y%m%d).txt ;</code>

<code>    </code><code>done</code>

或者使用

<code>echo</code> <code>查找未使用的IP位址,通過檢測MAC,來找,如果沒有開機,無法找到!</code>

<code>for</code> <code>((  i=1 ; i&lt;254; i++ ))</code>

<code>      </code><code>do</code>

<code>                </code><code>/usr/bin/arping</code>  <code>-I eth0 -c 1  192.168.0.$i  | </code><code>grep</code> <code>-B 2 </code><code>"Received 0"</code> <code>| </code><code>grep</code> <code>"192.168.0."</code> <code>&gt;&gt;mac$(</code><code>date</code> <code>+%Y%m%d).txt ;</code>

<code>  </code><code>#              sleep 3</code>

<code>              </code><code>echo</code> <code>-e  </code><code>"--&gt;  $(($i*100/254)) %  \c "</code> 

<code>          </code> 

<code>     </code><code>done</code>

<code>echo</code> <code>100%執行完畢,已輸出到目前目錄下的mac$(</code><code>date</code> <code>+%Y%m%d).txt檔案,請檢視!</code>

本文轉自 lcpljc 51CTO部落格,原文連結:http://blog.51cto.com/lcpljc/1677375,如需轉載請自行聯系原作者

下一篇: rsync