Format-List
Formatta l'output come elenco di proprietà in cui ogni proprietà viene visualizzata in una nuova riga.
Sintassi
Format-List
[[-Property] <Object[]>]
[-GroupBy <Object>]
[-View <string>]
[-ShowError]
[-DisplayError]
[-Force]
[-Expand <string>]
[-InputObject <psobject>]
[<CommonParameters>]
Descrizione
Il cmdlet Format-List
formatta l'output di un comando come elenco di proprietà in cui ogni proprietà viene visualizzata in una riga separata. È possibile usare Format-List
per formattare e visualizzare tutte le proprietà o selezionate di un oggetto come elenco (Format-List -Property *
).
Poiché è disponibile più spazio per ogni elemento in un elenco rispetto a una tabella, PowerShell visualizza più proprietà dell'oggetto nell'elenco e i valori delle proprietà hanno meno probabilità di essere troncati.
Esempio
Esempio 1: Formattare i servizi informatici
Get-Service | Format-List
Questo comando formatta le informazioni sui servizi nel computer come elenco. Per impostazione predefinita, i servizi vengono formattati come tabella. Il cmdlet Get-Service
ottiene oggetti che rappresentano i servizi nel computer. L'operatore della pipeline (|
) passa i risultati attraverso la pipeline a Format-List
.
Il comando Format-List
formatta quindi le informazioni sul servizio in un elenco e le invia al cmdlet di output predefinito per la visualizzazione.
Esempio 2: Formattare i file PS1XML
Questi comandi visualizzano informazioni sui file PS1XML nella directory di PowerShell come elenco.
$A = Get-ChildItem $pshome\*.ps1xml
Format-List -InputObject $A
Il primo comando ottiene gli oggetti che rappresentano i file e li archivia nella variabile $A
.
Il secondo comando usa Format-List
per formattare le informazioni sugli oggetti archiviati in $A
. Questo comando usa il parametro InputObject
Esempio 3: Formattare le proprietà del processo in base al nome
Questo comando visualizza il nome, la priorità di base e la classe di priorità di ogni processo nel computer.
Get-Process | Format-List -Property Name, BasePriority, PriorityClass
Usa il cmdlet Get-Process
per ottenere un oggetto che rappresenta ogni processo. L'operatore pipeline (|
) passa gli oggetti di processo attraverso la pipeline a Format-List
.
Format-List
formatta i processi come elenco delle proprietà specificate. Il nome del parametro della proprietà è facoltativo, quindi puoi ometterlo.
Esempio 4: Formattare tutte le proprietà per un processo
Questo comando visualizza tutte le proprietà del processo Winlogon.
Get-Process winlogon | Format-List -Property *
Usa il cmdlet Get-Process per ottenere un oggetto che rappresenta il processo Winlogon. L'operatore pipeline (|
) passa l'oggetto processo Winlogon attraverso la pipeline a Format-List
. Il comando usa il parametro Property per specificare le proprietà e il *
per indicare tutte le proprietà.
Poiché il nome del parametro property Format-List
invia automaticamente i risultati al cmdlet di output predefinito per la visualizzazione.
Esempio 5: Risoluzione degli errori di formato
Negli esempi seguenti vengono illustrati i risultati dell'aggiunta dei parametri DisplayError o ShowError con un'espressione.
PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -DisplayError
DayOfWeek : Friday
$_ / $null : #ERR
PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -ShowError
DayOfWeek : Friday
$_ / $null :
Failed to evaluate expression " $_ / $null ".
+ CategoryInfo : InvalidArgument: (12/21/2018 7:59:23 AM:PSObject) [], RuntimeException
+ FullyQualifiedErrorId : PSPropertyExpressionError
Parametri
-DisplayError
Indica che questo cmdlet visualizza gli errori nella riga di comando. Questo parametro viene usato raramente, ma può essere usato come supporto per il debug quando si formattano espressioni in un comando Format-List
e le espressioni non sembrano funzionare.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Expand
Specifica l'oggetto formattato della raccolta, nonché gli oggetti nella raccolta. Questo parametro è progettato per formattare gli oggetti che supportano l'interfaccia System.Collections.ICollection. Il valore predefinito è EnumOnly
. I valori accettabili per questo parametro sono:
-
EnumOnly
. Visualizza le proprietà degli oggetti nell'insieme. -
CoreOnly
. Visualizza le proprietà dell'oggetto di raccolta. -
Both
. Visualizza le proprietà dell'oggetto raccolta e le proprietà degli oggetti nell'insieme.
Tipo: | String |
Valori accettati: | CoreOnly, EnumOnly, Both |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Force
Indica che questo cmdlet visualizza tutte le informazioni sull'errore. Usare con il DisplayError
Obbligatorio anche per la formattazione di determinati tipi .NET. Per altre informazioni, vedere la sezione note.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-GroupBy
Specifica l'output raggruppandolo in base a una proprietà o valore condiviso. Immettere un'espressione o una proprietà dell'output. Il parametro GroupBy prevede che gli oggetti siano ordinati. Usare il cmdlet Sort-Object
prima di usare Format-List
per raggruppare gli oggetti.
Il valore del parametro GroupBy può essere una nuova proprietà calcolata. La proprietà calcolata può essere un blocco di script o una tabella hash. Le coppie chiave-valore valide sono:
-
Name
(oLabel
) -<string>
-
Expression
-<string>
o<script block>
FormatString
-<string>
Per altre informazioni, vedere about_Calculated_Properties.
Tipo: | Object |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-InputObject
Specifica gli oggetti da formattare. Immettere una variabile contenente gli oggetti o digitare un comando o un'espressione che ottiene gli oggetti .
Tipo: | PSObject |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-Property
Specifica le proprietà dell'oggetto visualizzate nella visualizzazione e l'ordine in cui vengono visualizzate. Sono consentiti caratteri jolly.
Se si omette questo parametro, le proprietà visualizzate nella visualizzazione dipendono dall'oggetto visualizzato. Il nome del parametro Property è facoltativo. Non è possibile utilizzare i parametri
Il valore del parametro Property
-
Name
(oLabel
) -<string>
-
Expression
-<string>
o<script block>
FormatString
-<string>
Per altre informazioni, vedere about_Calculated_Properties.
Tipo: | Object[] |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | True |
-ShowError
Indica che il cmdlet invia messaggi di errore attraverso la pipeline. Questo parametro viene usato raramente, ma può essere usato come supporto per il debug quando si formattano espressioni in un comando Format-List
e le espressioni non sembrano funzionare.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-View
Specifica il nome di un formato di elenco o di una visualizzazione alternativa. Non è possibile utilizzare i parametri
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
È possibile inviare tramite pipe qualsiasi oggetto a questo cmdlet.
Output
Microsoft.PowerShell.Commands.Internal.Format
Questo cmdlet restituisce gli oggetti di formato che rappresentano l'elenco.
Note
Windows PowerShell include gli alias seguenti per Format-List
:
fl
I cmdlet di formato, come Format-List
, organizzano i dati da visualizzare ma non li mostrano.
I dati vengono visualizzati dalle funzionalità di output di PowerShell e dai cmdlet che contengono il verbo Out
(i cmdlet Out
), ad esempio Out-Host
o Out-File
.
Se non si usa un cmdlet di formato, PowerShell applica il formato predefinito per ogni oggetto visualizzato.
Il parametro View consente di specificare un formato alternativo per la tabella. È possibile usare le visualizzazioni definite nei file di *.format.PS1XML
nella directory di PowerShell oppure creare visualizzazioni personalizzate nei nuovi file PS1XML e usare il cmdlet Update-FormatData
per includerli in PowerShell.
La vista alternativa per il parametro Visualizzazione deve usare il formato elenco, altrimenti il comando non riesce. Se la vista alternativa è una tabella, usare Format-Table
. Se la visualizzazione alternativa non è un elenco o una tabella, utilizzare Format-Custom
.
Se si desidera utilizzare Format-List
con il parametro della proprietà , è necessario includere il parametro Force in una delle seguenti condizioni:
Gli oggetti di input vengono formattati fuori banda usando il metodo
ToString()
. Questo vale per i tipi primitivi[string]
e .NET che sono un superset dei tipi numerici predefiniti, ad esempio[int]
,[long]
e altri.Gli oggetti di input non hanno proprietà pubbliche.
Gli oggetti di input sono istanze dei tipi di wrapper usati da PowerShell per i flussi di output diversi dal flusso di output Success. Questo vale solo quando questi tipi di wrapper vengono inviati allo stream di output Successo, il che richiede di averli acquisiti precedentemente tramite parametri comuni, ad esempio ErrorVariable, o di utilizzare un reindirizzamento, come
*>&1
.I tipi di wrapper includono:
- System.Management.Automation.ErrorRecord
- System.Management.Automation.WarningRecord
- System.Management.Automation.VerboseRecord
- System.Management.Automation.DebugRecord
- System.Management.Automation.InformationRecord