Cuestión : Pregunta de Powershell WMI

Hola, el

I ha escrito una escritura de Powershell para preguntar una cierta información sobre nuestros servidores. ¿Me preguntaba si alguien podría decirme cómo omitir las palabras “Hotfix” y la “actualización” de la escritura a la hoja de balance del sobresalir? También, entre los listados de programa, hay boquetes a veces enormes betweeen programas. ¿Puede usted por favor decirme qué está causando esto y cómo fijarlo?

Thank you
class= > " claro " del
> del " codeSnippet " del class= del
class= " lineNumbers " del
class= del
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:
class= " del id= " codeSnippet800458 del
$strComputer = “.”

$Excel = Nuevo-Objeto - COM Excel.Application
$Excel.visible = $True
$Excel = $Excel.Workbooks.Add ()

$Sheet = $Excel.WorkSheets.Item (1)
$Sheet.Cells.Item (1.1) = “computadora”
$Sheet.Cells.Item (1.2) = “letra de impulsión”
$Sheet.Cells.Item (1.3) = “descripción”
$Sheet.Cells.Item (1.4) = “sistema de ficheros”
$Sheet.Cells.Item (1.5) = “tamaño en el GB”
$Sheet.Cells.Item (1.6) = “espacio libre en el GB”


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

$intRow = 2
$colItems = Consiguen-wmiObject - clasificar “Win32_LogicalDisk” - el `del namespace “raíz \ CIMV2”
- nombre de computadora $strComputer

foreach ($objItem en $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) = “producto”
$Sheet.Cells.Item (7.2) = “vendedor”
$Sheet.Cells.Item (7.3) = “versión”
$Sheet.Cells.Item (7.4) = “instalan la fecha”

$intRow = 7
$Keys = Consiguen-ChildItem HKLM: \ el software \ Microsoft \ Windows \ CurrentVersion \ desinstalan

$Items = $keys |foreach-objeto {Conseguir-ItemProperty $_.PsPath}

foreach ($item en $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 ()
}

Claro
class= del

Respuesta : Pregunta de Powershell WMI

Hola Brent,

He hecho algunos pellizcos que deben hacer lo que usted está buscando.  Fijaré otra vez pronto la explicación de cada cambio.

Aclamaciones,

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 = Nuevo-Objeto - COM Excel.Application
$Excel.visible = $True
$Excel = $Excel.Workbooks.Add ()

$Sheet = $Excel.WorkSheets.Item (1)
$Sheet.Cells.Item (1.1) = “computadora”
$Sheet.Cells.Item (1.2) = “letra de impulsión”
$Sheet.Cells.Item (1.3) = “descripción”
$Sheet.Cells.Item (1.4) = “sistema de ficheros”
$Sheet.Cells.Item (1.5) = “tamaño en el GB”
$Sheet.Cells.Item (1.6) = “espacio libre en el GB”


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

$intRow = 2
$colItems = Consiguen-wmiObject - clasificar “Win32_LogicalDisk” - el `del namespace “raíz \ CIMV2”
- nombre de computadora $strComputer

foreach ($objItem en $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) = “producto”
$Sheet.Cells.Item ($introw, 2) = “vendedor”
$Sheet.Cells.Item ($introw, 3) = “versión”
$Sheet.Cells.Item ($introw, 4) = “instalan la fecha”

$introw = $introw + 1
$Keys = Consiguen-ChildItem HKLM: \ el software \ Microsoft \ Windows \ CurrentVersion \ desinstalan

$Items = $keys | foreach-objeto {Conseguir-ItemProperty $_.PsPath} | donde-objeto {($_.DisplayName - actualización del notmatch “|Ne $null de Hotfix”) - y ($_.DisplayName -)}

foreach ($item en $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 ()

Claro
Otras soluciones  
 
programming4us programming4us