麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > PowerShell > 正文

PowerShell腳本實現檢測網絡內主機類型

2020-10-29 20:59:38
字體:
來源:轉載
供稿:網友

最近一直在寫一個自動檢測網絡內主機類型的腳本。基本功能可以實現判斷主機操作系統類型,如果是域內的主機可以獲取主機的硬件參數和性能參數,并判斷是否存在網絡設備。對一個運維人員來說往往需要盡快熟悉一個陌生的網絡。所以這個腳本就很方便了,如果有更好的建議歡迎指正感謝!

復制代碼 代碼如下:

############################################
#Author:Lixiaosong
#Email:[email protected]
#For:檢測/24掩碼網絡內主機系統類型并獲取windows主機參數
#Version:1.0
##############################################
Param(
[Parameter(Mandatory=$true)]$Network
)
$Ip=for($i= 1; $i-ile255; $i+= 1){"$Network.$i"}
foreach($Ipaddressin$IP){
#檢測相關端口狀態
$Port3389=3389 | %{ echo ((new-objectNet.Sockets.TcpClient).Connect("$Ipaddress",$_)) "$true"} 2>$null
$Port22=22 | %{ echo ((new-objectNet.Sockets.TcpClient).Connect("$Ipaddress",$_)) "$true"} 2>$null
$Port23=23 | %{ echo ((new-objectNet.Sockets.TcpClient).Connect("$Ipaddress",$_)) "$true"} 2>$null
$Pingtest=Test-connection-ComputerName$IPaddress-quiet
if($Port3389-like"$true"){
#服務器信息
$HostSN=(GWMI-ComputerName"$Ipaddress"win32_bios).SerialNUmber
$HostFirm=(GWMI-ComputerName"$Ipaddress"win32_bios).Manufacturer
$HostModel=(GWMI-ComputerName"$Ipaddress"Win32_ComputerSystem).Model
#主機信息
$HostName=(GWMI-ComputerName"$Ipaddress"Win32_ComputerSystem).DNSHostName
$DomainName=(GWMI-ComputerName"$Ipaddress"Win32_ComputerSystem).Domain
#服務器硬件資源信息
$Freemem=(GWMI-ComputerName"$Ipaddress"win32_OperatingSystem).FreePhysicalMemory#空余物理內存
$Totalmem=(GWMI-ComputerName"$Ipaddress"win32_OperatingSystem).TotalVisibleMemorySize#總物理內存
$cpu=((get-counter-ComputerName"$IPaddress"-counter"/processor(_total)/% processor time").CounterSamples|where{$_.InstanceName -eq"_total"}).CookedValue
$DiskRead=" {0:0.0} KB"-f($(((get-counter-ComputerName"$Ipaddress"-counter"/LogicalDisk(_total)/Disk Read Bytes/sec").CounterSamples|where{$_.InstanceName -eq"_total"}).CookedValue) / 1KB)
$DiskWrite="{0:0.0} KB"-f($(((get-counter-ComputerName"$Ipaddress"-counter"/LogicalDisk(_total)/Disk Write Bytes/sec").CounterSamples|where{$_.InstanceName -eq"_total"}).CookedValue) /1KB)
$NetworkSent=" {0:0.0} KB"-f($((Get-Counter-ComputerName"$Ipaddress"-Counter"/Network Interface(*)/Bytes Sent/sec").CounterSamples|%{$_.CookedValue}|sort|select-last1) / 1KB)
$NetworkReceive=" {0:0.0} KB"-f($((Get-Counter-ComputerName"$IPaddress"-Counter"/Network Interface(*)/Bytes Received/sec").CounterSamples|%{$_.CookedValue}|sort|select-last1) / 1KB)
$Havecpu= "{0:0.0} %"-f$cpu
$Permem="{0:0.0} %"-f((($Totalmem-$Freemem)/$Totalmem)*100)
$Disks= GWMI-ComputerName"$IPaddress"win32_logicaldisk|?{$_.drivetype -eq3}
#獲取域內Windows主機參數
Write-host"
=================================================================================================================
時間:$(get-date) WINDOWS服務器:$HostName.$DomainName IP:$($IPaddress.Padleft(2)) 品牌:$($HostFirm.Padleft(2)) 型號:$($HostModel.Padleft(2)) 序列號:$($HostSN.Padleft(2))
CPU使用率:$($Havecpu.Padleft(8)) 內存使用率:$($Permem.Padleft(13))
磁盤讀/秒:$($DiskRead.Padleft(8)) 磁盤寫/秒:$($DiskWrite.Padleft(13))
網絡發送/秒:$($NetworkSent.Padleft(8)) 網絡接收/秒:$($NetworkReceive.Padleft(13))
盤符   盤總空間  空閑空間  使用空間  使用百分比"-ForegroundColorGreen
foreach($Diskin$Disks){
$Size= "{0:0.0} GB"-f($Disk.Size / 1GB )
$FreeSpace= "{0:0.0} GB"-f($Disk.FreeSpace / 1GB)
$Used= ([int64]$Disk.size - [int64]$Disk.freespace)
$SpaceUsed= "{0:0.0} GB"-f($Used/ 1GB)
$Percent="{0:0.0} %"-f($Used* 100 / $Disk.Size)
$n=3
Write-Host"  "$Disk.deviceid.PadRight($n)-no-ForegroundColorGreen
$n=10
Write-Host$Size.Padleft($n)-no-ForegroundColorGreen
Write-Host$FreeSpace.Padleft($n)-no-ForegroundColorGreen
Write-Host$SpaceUsed.Padleft($n)-no-ForegroundColorGreen
Write-Host$Percent.Padleft($n)-ForegroundColorGreen
}
}
#判斷linux主機
if($port22-like"$true"){
write-host"
================================================================================================================
服務器:$IPaddress 開放端口:"22" 可能是一臺是"linux"主機"-ForegroundColorYellow
}
#判斷網絡設備
if($port23-like"$true"){
Write-host"
================================================================================================================
服務器:$Ipaddress 開放端口:"23" 可能是一臺"網絡"設備"-ForegroundColorCyan
}
#主機不存在
if($Pingtest-like"$False"){
Write-host"
================================================================================================================
服務器:$Ipaddress 此主機不存在"-ForegroundColorRed
}
}

使用方法舉例:

1 將腳本保存至c:/
2 運行powershell 執行PS C:/> ./test.ps1 10.7.2 #只需輸入網絡的前三位

復制代碼 代碼如下:

PS C:/> ./test.ps1 10.7.2

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲一区二区成人 | 久久精品一区二区三区四区五区 | 久久亚洲精品久久国产一区二区 | 狠狠久久伊人中文字幕 | 黄色影院网站 | 欧美日韩免费在线观看视频 | 欧美成人一二三区 | 本色视频aaaaaa一级网站 | 91成人免费看 | 久久久入口 | 国产 日韩 亚洲 欧美 | 成人免费影院 | 手机免费看一级片 | 在线a毛片 | 深夜影院一级毛片 | av成人在线免费观看 | 国产精品一区二区免费在线观看 | 国产精品久久久久久久久久久天堂 | 久久精品久 | 日韩做爰视频免费 | 国产精品热 | 日韩毛片网 | 精品国产视频一区二区三区 | 人人舔人人插 | 久久久www成人免费精品 | 在线播放黄色网址 | www.91在线观看 | 亚洲天堂ww | 黄色片网站在线播放 | 国产精品自在线拍 | 国产二区三区视频 | 精品国产91久久久久 | 国产亚洲精品久久久久久久久 | 全黄裸片武则天艳史 | 双性帝王调教跪撅打屁股 | 99riav国产在线观看 | 国产一区二区精品免费 | 欧美久久久一区二区三区 | 奶子吧naiziba.cc免费午夜片在线观看 | 粉嫩av一区二区三区四区在线观看 | 精品一区二区久久久久久按摩 |