InfotechGuyz.com Blog

Script to query remote system data

This script will connect to a remote computer to retrieve Operation system, service pack version, serial number, processer speed, processor type, memory, hard drive space and more..

1. Open notepad
2. Copy and paste below text to notepad
3. Save the file with .ps1  extension.

Usage: remotesystemdata.ps1 servername

#------------ SCRIPT STARTS HERE--------------
#--------------------------------------------------------
#Usage: remotesystemdata.ps1 servername
write-host $args[0] -foreground yellow
$colItems3 = gwmi -computername $args[0] -query "select caption,csdversion,servicepackmajorversion from win32_operatingsystem"
foreach ($objItem in $colItems3) {
write-host "OS:, " $objItem.caption
write-host "Service Pack:, " $objItem.csdversion
write-host "ServicePackMajorVersion:, " $objItem.servicepackmajorversion
}

$colItems2 = gwmi -computername $args[0] -query "select identifyingnumber,vendor,name from win32_computersystemproduct"
foreach ($objItem in $colItems2) {
write-host "Service Tag:, " $objItem.identifyingnumber
write-host "Vendor:, " $objItem.vendor
write-host "Model Name:, " $objItem.name
}

$colItems5 = gwmi -computername $args[0] -query "select ipaddress,dnsdomain,dnsdomainsuffixsearchorder,winsprimaryserver from win32_networkadapterconfiguration where servicename='E1000'"
foreach ($objItem in $colItems5) {
write-host "Connection:, " $objItem.Index
write-host "DNS Search Order:, " $objItem.dnsdomainsuffixsearchorder
write-host "IP Address:, " $objItem.ipaddress
write-host "DNS Domain:, " $objItem.dnsdomain
write-host "Primary WINS Server:, " $objItem.winsprimaryserver

}

$colItems = gwmi -computername $args[0] -query "select name,caption from win32_processor"
foreach ($objItem in $colItems) {
write-host "name:, " $objItem.name
write-host "caption:, " $objItem.caption
}

 

$colItems4 = gwmi -computername $args[0] -query "select tag,banklabel,capacity,speed from win32_PHYSICALMEMORY"
foreach ($objItem in $colItems4) {
write-host "BankLabel:, " $objItem.banklabel
write-host "Memory Module:, " $objItem.tag
write-host "Capacity:, " $objItem.capacity
write-host "Speed:, " $objItem.speed
}

 

$colItems6 = gwmi -computername $args[0] -query "select deviceid,size,freespace,volumename from win32_logicaldisk where drivetype='3'"
foreach ($objItem in $colItems6) {
write-host "DeviceID:, " $objItem.deviceid
write-host "HardDisk Size:, " $objItem.size
write-host "Free Space:, " $objItem.freespace
write-host "Volume Name:, " $objItem.volumename
}

#-----SCRIPT ENDSS HERE--------------