要求:寫一個腳本判斷某個網絡内所有活動的IP位址.
實作腳本:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<code>#!/bin/bash</code>
<code>#script_name: ipscan.sh</code>
<code>file1=</code><code>/root/scripts/uplist</code>
<code>file2=</code><code>/root/scripts/downlist</code>
<code>if</code> <code>[ -e $file1 ]</code>
<code>then</code>
<code> </code><code>rm</code> <code>-rf $file1</code>
<code>fi</code>
<code>if</code> <code>[ -e $file2 ]</code>
<code> </code><code>rm</code> <code>-rf $file2</code>
<code>for</code> <code>((i=2;i<=254;i++))</code>
<code>do</code>
<code> </code><code>/bin/ping</code> <code>-c 1 192.168.3.$i >></code><code>/dev/null</code>
<code> </code><code>if</code> <code>[ $? -</code><code>eq</code> <code>0 ]</code>
<code> </code><code>then</code>
<code> </code><code>echo</code> <code>"192.168.3.$i is alive"</code> <code>>> </code><code>/root/scripts/uplist</code>
<code> </code><code>else</code>
<code> </code><code>echo</code> <code>"192.168.3.$i is not alive"</code> <code>>> </code><code>/root/scripts/downlist</code>
<code> </code><code>fi</code>
<code>done</code>
腳本執行效果:
[root@zabbix scripts]# sh ipscan.sh &
[1] 20131
[root@zabbix scripts]# ps -ef|grep ipscan |grep -v grep
root 20131 15528 0 17:41 pts/1 00:00:00 sh ipscan.sh
[root@zabbix scripts]# pwd
/root/scripts
[root@zabbix scripts]# ls
downlist ipscan.sh uplist
#檢視IP統計
[root@zabbix scripts]# cat uplist |wc -l
50
[root@zabbix scripts]# cat downlist |wc -l
203
成功掃描完畢.
本文轉自marbury 51CTO部落格,原文連結:http://blog.51cto.com/magic3/1438515,如需轉載請自行聯系原作者