que ejecutar el siguiente código utilizando PowerShell para obtener una lista de Agregar/Quitar programas del registro:¿Cómo agrego una nueva línea a la salida del comando en PowerShell?
Get-ChildItem -path hklm:\software\microsoft\windows\currentversion\uninstall `
| ForEach-Object -Process { Write-Output $_.GetValue("DisplayName") } `
| Out-File addrem.txt
quiero la lista para ser separado por saltos de línea por cada programa. He intentado:
Get-ChildItem -path hklm:\software\microsoft\windows\currentversion\uninstall `
| ForEach-Object -Process { Write-Output $_.GetValue("DisplayName") `n } `
| out-file test.txt
Get-ChildItem -path hklm:\software\microsoft\windows\currentversion\uninstall `
| ForEach-Object {$_.GetValue("DisplayName") } `
| Write-Host -Separator `n
Get-ChildItem -path hklm:\software\microsoft\windows\currentversion\uninstall `
| ForEach-Object -Process { $_.GetValue("DisplayName") } `
| foreach($_) { echo $_ `n }
Pero todo el resultado en formato raro cuando la salida de la consola, y con tres caracteres cuadrados después de cada línea cuando la salida a un archivo. Intenté Format-List
, Format-Table
y Format-Wide
sin suerte. Originalmente, pensé que algo como esto funcionaría:
Get-ChildItem -path hklm:\software\microsoft\windows\currentversion\uninstall `
| ForEach-Object -Process { "$_.GetValue("DisplayName") `n" }
Pero eso sólo me dio un error.
Esto realmente funcionó. Pero, si se agregan otros valores, es decir, $ _. GetValue ('InstallDate'), se estropea. Cumple la pregunta original, así que gracias por la ayuda. – mike
Agregué una respuesta alternativa debajo de la cual creo que probablemente sea mejor :) – Jaykul
Funciona muy bien. Tenga cuidado de usar el 'y no el '. En mi teclado (diseño Qwerty estadounidense-inglés) está ubicado a la izquierda del 1. –