descargar - Error en la tabla de formato de PowerShell
powershell download (2)
Los cmdlets Format-*
no realizan la salida final, sino que transforman su entrada en una secuencia de objetos de formato. Estos objetos de formato se convierten a la salida real mediante uno de los cmdlets Out-Default
, probablemente Out-Default
.
Si un script tiene varios conjuntos de objetos de formato diferentes, la salida final de los objetos combinados de todas las expresiones en el script Out-Default
no puede resolver las inconsistencias.
Solución: agregue un Out-Sting
al final de cada canal de generación de salida para realizar el formateo de una expresión a la vez:
gwmi win32_useraccount -Computername $env:computername -Filter "Domain=''$env:computername''" |
Format-Table Name,Description | Out-String
Estoy intentando ejecutar el siguiente código para recuperar una lista de usuarios locales en una máquina.
gwmi win32_useraccount -Computername $env:computername -Filter "Domain=''$env:computername''" |
Format-Table Name,Description
Recibo este error cuando se ejecuta dentro de un archivo PS1:
The object of type "Microsoft.PowerShell.Commands.Internal.Format.FormatStartData" is not valid or not in the correct sequence. This is likely caused by a user-specified "f ormat-table" command which is conflicting with the default formatting. + CategoryInfo : InvalidData: (:) [out-lineoutput], InvalidOperationException + FullyQualifiedErrorId : ConsoleLineOutputOutOfSequencePacket,Microsoft.PowerShell.Commands.OutLineOutputCommand
Entiendo que este problema surge debido a la forma en que se analizan las tuberías, pero no puedo averiguar cómo solucionarlo.
También puedes probar:
gwmi win32_useraccount -Computername $env:computername -Filter "Domain=''$env:computername''" | Select-Object Name,Description | Format-Table Name,Description
De hecho, se convierte a un PSCustomObject
intermedio y todavía tiene un objeto.