ManLerntNieAus 10 Geschrieben 24. August 2012 Melden Geschrieben 24. August 2012 Hallo liebe ITler, ich habe hier schon einmal einen Post gemacht zum IP's sammeln, habe auch was gefunden und versucht in meine Hard- und Softwareliste einzubauen. Leider hat es nicht wirklich funktioniert. Außerdem habe ich bei meiner Hard- und Softwareliste einen seltsamen Fehler drinnen, wenn ich es einmal durchlaufen lassen. Bin Anfänger und habe nicht wirklich das KnowHow... Hier ist der Code: $Hersteller = "%Microsoft%" $Eingabedateiname = "computer.txt" $Query = "SELECT * FROM Win32_Product where not Vendor like '%Microsoft%'" filter select-Online { $status = Get-WmiObject Win32_PingStatus -Property StatusCode -filter "Address='$_'" if ($status.Statuscode -eq 0) { $_ } } #Import der IP's vom Netzwerk $i =1 $Ip = "192.168.0." $ipsamling = @() Write-Host "IP Address" Write-Host "----------------------------------------" do { $Ip4th = $Ip + $i $Pingy = get-WmiObject Win32_PingStatus -f "Address='$Ip4th'" if($Pingy.StatusCode -eq 0) { "{0,0} {1,5} {2,5}" -f $Pingy.Address, $Pingy.StatusCode," ON NETWORK" $ipsamling += $Pingy.Address } else {"{0,0} {1,5} {2,5}" -f $Pingy.Address, $Pingy.StatusCode, " xxxxxxxxx" } $i++ } until ($i -eq 255) echo "Kontakt til:" echo $ipsamling # Abpeichern der IP'S in eine Liste #get-WmiObject -query $Query -ipsamling $_ | select Ip | export-csv -path .\$svr\Computerversuch.csv –noType # Import der Computernamen $Computernamen = Get-Content \.$ipsammling $Computernamen | foreach { if (Ping($_)) { Write-Host "Inventarisiere Software für Computer $_ ..." # Auslesen der installierten MSI-Pakete auf allen Computern $Software += foreach-object { get-wmiobject -query $Query -computername $_ | select Name, Version |export-csv -path .\$svr\Softwareinventarliste.csv -noType } } else { Write-Error "Computer nicht erreichbar!" } } # Check to see if a directory exists for this machine, if not create one if (!(Test-Path -path .\$Computernamen)) { New-Item .\$Computernamen\ -type directory } # Get the server info #getwmiinfo $Eingabename zuerst laufen lassen, Fehlermeldung ignorieren, danach getwmiinfo $Computernamen eingeben und $Eingabename aus"rauten" # getwmiinfo $Eingabename getwmiinfo $Computernamen function getwmiinfo ($Computernamen) { # Get ComputerSystem info and write it to a CSV file gwmi -query "select * from Win32_ComputerSystem" -computername $Computernamen | select Name, Model, Manufacturer, DNSHostName, Domain, PartOfDomain, NumberOfProcessors, SystemType, TotalPhysicalMemory, UserName | export-csv -path .\$svr\ComputerSystem.csv -noType # Get OperatingSystem info and write it to a CSV file gwmi -query "select * from Win32_OperatingSystem" -computername $Computernamen | select Name, Version, FreePhysicalMemory, ServicePackMajorVersion, ServicePackMinorVersion | export-csv -path .\$svr\OperatingSystem.csv -noType # Get PhysicalMemory info and write it to a CSV file gwmi -query "select * from Win32_PhysicalMemory" -computername $Computernamen | select Name, Capacity, DeviceLocator, Tag | export-csv -path .\$svr\PhysicalMemory.csv -noType # Get LogicalDisk info and write it to a CSV file gwmi -query "select * from Win32_LogicalDisk where DriveType=3" -computername $Computernamen | select Name, FreeSpace, Size | export-csv -path .\$svr\LogicalDisk.csv –noType } Bei diesem Teil in der Softwareliste kommt beim ersten Durchlauf immer ein Fehler: # Get the server info #getwmiinfo $Eingabename zuerst laufen lassen, Fehlermeldung ignorieren, danach getwmiinfo $Computernamen eingeben und $Eingabename aus"rauten" # getwmiinfo $Eingabename getwmiinfo $Computernamen Ich würde mich sehr über Hilfe freuen! Danke schonmal und einen schönen Freitag
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden