Vraag : De Vraag van Powershell WMI

Hello, heeft

I een manuscript Powershell geschreven om wat informatie over onze servers te vragen. Ik was of benieuwd kon iemand me vertellen hoe te om de woorden „Hotfix“ weg te laten en de „Update“ van wordt geschreven aan spreadsheet uitblinkt? Ook, in - tussen de programmalijsten, zijn er soms reusachtige hiaten betweeen programma's. Kunt u me wat alstublieft vertellen dit veroorzaakt en hoe te om het te bevestigen?

Thank you
" codeBody "
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:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
" notpretty "
$strComputer = „.“

$Excel = nieuw-Voorwerp - Com Excel.Application
$Excel.visible = $True
$Excel = $Excel.Workbooks.Add ()

$Sheet = $Excel.WorkSheets.Item (1)
$Sheet.Cells.Item (1.1) = „Computer“
$Sheet.Cells.Item (1.2) = de „Brief van de Aandrijving“
$Sheet.Cells.Item (1.3) = „Beschrijving“
$Sheet.Cells.Item (1.4) = „FileSystem“
$Sheet.Cells.Item (1.5) = „Grootte in GB“
$Sheet.Cells.Item (1.6) = „Vrije Ruimte in GB“


$WorkBook = $Sheet.UsedRange
$WorkBook.Interior.ColorIndex = 8
$WorkBook.Font.ColorIndex = 11
$WorkBook.Font.Bold = $True

$intRow = 2
$colItems = krijg -krijgen-wmiObject - klasse „Win32_LogicalDisk“ - namespace „wortel \ CIMV2“ `
- computername $strComputer

foreach ($objItem in $colItems) {
$Sheet.Cells.Item ($intRow, 1) = $objItem.SystemName
$Sheet.Cells.Item ($intRow, 2) = $objItem.DeviceID
$Sheet.Cells.Item ($intRow, 3) = $objItem.Description
$Sheet.Cells.Item ($intRow, 4) = $objItem.FileSystem
$Sheet.Cells.Item ($intRow, 5) = $objItem.Size/1GB
$Sheet.Cells.Item ($intRow, 6) = $objItem.FreeSpace/1GB

$intRow = $intRow + 1

$WorkBook.EntireColumn.AutoFit ()

}

$Sheet = $Excel.WorkSheets.Item (1)
$Sheet.Cells.Item (7.1) = „Product“
$Sheet.Cells.Item (7.2) = „Verkoper“
$Sheet.Cells.Item (7.3) = „Versie“
$Sheet.Cells.Item (7.4) = „installeer Datum“

$intRow = 7
$Keys = krijgen-ChildItem HKLM: \ De Desinstallatie van de Vensters \ CurrentVersion \ van de software \ Microsoft \

$Items = $keys |foreach-voorwerp {krijgen-ItemProperty $_.PsPath}

foreach ($item in $items) {
$Sheet.Cells.Item ($intRow, 1) = $Item.DisplayName
$Sheet.Cells.Item ($intRow, 2) = $Item.Publisher
$Sheet.Cells.Item ($intRow, 3) = $Item.DisplayVersion
$Sheet.Cells.Item ($intRow, 4) = $Item.InstallDate

$intRow = $intRow + 1

$WorkBook.EntireColumn.AutoFit ()
}

Ontruim

Antwoord : De Vraag van Powershell WMI

Hallo Brent,

Ik heb een paar kneepjes gemaakt die zouden moeten doen wat u zoekt.  Ik zal binnenkort opnieuw het verklaren van elke verandering posten.

Juicht toe,

D
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:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
$strComputer = „.“

$Excel = nieuw-Voorwerp - Com Excel.Application
$Excel.visible = $True
$Excel = $Excel.Workbooks.Add ()

$Sheet = $Excel.WorkSheets.Item (1)
$Sheet.Cells.Item (1.1) = „Computer“
$Sheet.Cells.Item (1.2) = de „Brief van de Aandrijving“
$Sheet.Cells.Item (1.3) = „Beschrijving“
$Sheet.Cells.Item (1.4) = „FileSystem“
$Sheet.Cells.Item (1.5) = „Grootte in GB“
$Sheet.Cells.Item (1.6) = „Vrije Ruimte in GB“


$WorkBook = $Sheet.UsedRange
$WorkBook.Interior.ColorIndex = 8
$WorkBook.Font.ColorIndex = 11
$WorkBook.Font.Bold = $True

$intRow = 2
$colItems = krijg -krijgen-wmiObject - klasse „Win32_LogicalDisk“ - namespace „wortel \ CIMV2“ `
- computername $strComputer

foreach ($objItem in $colItems) {
$Sheet.Cells.Item ($intRow, 1) = $objItem.SystemName
$Sheet.Cells.Item ($intRow, 2) = $objItem.DeviceID
$Sheet.Cells.Item ($intRow, 3) = $objItem.Description
$Sheet.Cells.Item ($intRow, 4) = $objItem.FileSystem
$Sheet.Cells.Item ($intRow, 5) = $objItem.Size/1GB
$Sheet.Cells.Item ($intRow, 6) = $objItem.FreeSpace/1GB

$intRow = $intRow + 1

$WorkBook.EntireColumn.AutoFit ()

}

$intRow = $intRow + 1

$Sheet = $Excel.WorkSheets.Item (1)
$Sheet.Cells.Item ($introw, 1) = „Product“
$Sheet.Cells.Item ($introw, 2) = „Verkoper“
$Sheet.Cells.Item ($introw, 3) = „Versie“
$Sheet.Cells.Item ($introw, 4) = „installeer Datum“

$introw = $introw + 1
$Keys = krijgen-ChildItem HKLM: \ De Desinstallatie van de Vensters \ CurrentVersion \ van de software \ Microsoft \

$Items = $keys | foreach-voorwerp {krijgen-ItemProperty $_.PsPath} | waar-voorwerp {($_.DisplayName - notmatch „Update|Van Hotfix“) - en ($_.DisplayName - Ne $null)}

foreach ($item in $items) {
$Sheet.Cells.Item ($intRow, 1) = $Item.DisplayName
$Sheet.Cells.Item ($intRow, 2) = $Item.Publisher
$Sheet.Cells.Item ($intRow, 3) = $Item.DisplayVersion
$Sheet.Cells.Item ($intRow, 4) = $Item.InstallDate

$intRow = $intRow + 1

}

$WorkBook.EntireColumn.AutoFit ()

Ontruim
Andere oplossingen  
 
programming4us programming4us