[英]Python script to automate number of available ip addresses on my subnet
有人可以幫助我創建可完成這些操作的python腳本。 我正在嘗試學習如何使事情自動化。
運行nmap快速掃描並導出到文本文件:
nmap -T4 -F 10.0.0.1/24 > nmap.txt
將文本剪切到IP列表:
cat nmap.txt | grep "Nmap scan report" | awk '{print $5}' | cut -d '.' -f 4 > ip_sub.txt
創建可能的主機列表(列表為1-255):
python -c 'for i in range(255): print i+1' > ip_all.txt
排序文件以准備差異(可以早些做):
cat ip_all.txt | sort -n > ip_all_sort.txt
cat ip_sub.txt | sort -n > ip_sub_sort.txt
在列中創建差異文件:
diff -y ip_all_sort.txt ip_sub_sort.txt > ip_sub_all_diff.txt
現在,計算有多少未使用的IP地址:
grep '<' -o ip_sub_all_diff.txt | wc -l
首先將nmap安裝到python。
pip install python-nmap
用法如下所示:
import nmap
nm = nmap.PortScanner()
nm.scan('10.0.0.1')
res = nm.all_hosts()
print res
這樣,您可以跳過整個寫入文本文件的部分。 res
包含您的信息,您可以將regex用於grep部分,並使用for循環遍歷結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.