Converte gli oggetti Microsoft .NET Framework in una serie di stringhe a lunghezza variabile con valori delimitati da virgole (CSV) e salva le stringhe in un file CSV.

Sintassi

Export-CSV [[-Delimiter] <char>] [-Path] <string> -InputObject <psobject> [-Encoding <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-Confirm] [-WhatIf] [<CommonParameters>]

Export-CSV [-UseCulture] [-Path] <string> -InputObject <psobject> [-Encoding <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-Confirm] [-WhatIf] [<CommonParameters>]

Descrizione

Il cmdlet Export-CSV crea un file di lunghezza variabile CSV che rappresenta gli oggetti inviati.

Per ricreare oggetti dalle stringhe CSV nei file, è quindi possibile utilizzare il cmdlet Import-CSV. Gli oggetti risultanti sono le versioni CSV degli oggetti originali costituiti da rappresentazioni di stringhe dei valori delle proprietà senza alcun metodo.

È inoltre possibile utilizzare i cmdlet ConvertTo-CSV e ConvertFrom-CSV per convertire gli oggetti .NET Framework in stringhe CSV (e viceversa). Export-CSV equivale a ConvertTo-CSV, a eccezione del fatto che consente di salvare le stringhe CSV in un file.

È possibile utilizzare i parametri del cmdlet Export-CSV per specificare un delimitatore diverso dalla virgola o fare in modo che Export-CSV utilizzi il delimitatore predefinito per l'impostazione cultura corrente.

Quando si inviano più oggetti a Export-CSV, Export-CSV organizza il file in base alle proprietà del primo oggetto inviato. Se gli oggetti rimanenti non hanno una delle proprietà specificate, il valore della proprietà di tale oggetto è null, rappresentato da due virgole consecutive. Se gli oggetti rimanenti dispongono di proprietà aggiuntive, i valori di tali proprietà non vengono inclusi nel file.

Per ulteriori informazioni, vedere Export-CSV e la sezione Note.

Parametri

-Delimiter <char>

Specifica un delimitatore per separare i valori delle proprietà. Il valore predefinito è la virgola (,). Immettere un carattere, ad esempio i due punti (:). Per specificare il punto e virgola (;), è necessario racchiuderlo tra virgolette doppie.

Obbligatorio?

false

Posizione?

2

Valore predefinito

, (comma)

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Encoding <string>

Specifica la codifica del file CSV esportato. I valori validi sono Unicode, UTF7, UTF8, ASCII, UTF32, BigEndianUnicode, Default e OEM. Il valore predefinito è ASCII.

Obbligatorio?

false

Posizione?

named

Valore predefinito

ASCII

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Force

Sovrascrive il file specificato nel percorso senza chiedere conferma.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-InputObject <psobject>

Specifica gli oggetti da esportare come stringhe CSV. Immettere una variabile contenente gli oggetti oppure digitare un comando o un'espressione che consente di ottenere gli oggetti. È inoltre possibile reindirizzare gli oggetti a Export-CSV.

Obbligatorio?

true

Posizione?

named

Valore predefinito

Accettare input da pipeline?

true (ByValue, ByPropertyName)

Accettare caratteri jolly?

false

-NoClobber

Non sovrascrivere un file esistente (sostituirne il contenuto). Per impostazione predefinita, se nel percorso specificato è presente un file, Export-CSV lo sovrascrive senza visualizzare alcun avviso.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-NoTypeInformation

Omette le informazioni sui tipi dal file CSV. Per impostazione predefinita, la prima riga del file CSV contiene "#TYPE" seguito dal nome completo del tipo di oggetto .NET Framework.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Path <string>

Specifica il percorso del file CSV di output. Il parametro è obbligatorio.

Obbligatorio?

true

Posizione?

1

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-UseCulture

Utilizzare il separatore di elenco per l'impostazione cultura corrente come delimitatore dell'elemento. Il valore predefinito è la virgola (,).

Questo parametro è molto utile negli script distribuiti agli utenti di tutto il mondo. Per trovare il separatore di elenco di un'impostazione cultura, utilizzare il comando (Get-Culture).TextInfo.ListSeparator.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Comma

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Confirm

Chiede una conferma prima di eseguire il comando.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-WhatIf

Descrive ciò che accadrebbe se si eseguisse il comando senza eseguirlo realmente.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

System.Management.Automation.PSObject

È possibile reindirizzare qualsiasi oggetto .NET Framework a Export-CSV.

Output

System.String

L'elenco CSV viene inviato al file specificato nel parametro Path.

Note

Il cmdlet Export-CSV converte gli oggetti inviati in una serie di stringhe a lunghezza variabile CSV e salva le stringhe nel file di testo specificato. È possibile utilizzare Export-CSV per salvare oggetti in un file CSV e utilizzare quindi il cmdlet Import-CSV per creare oggetti dal testo del file CSV.

Nel file CSV, ogni oggetto viene rappresentato da un elenco di valori delle proprietà dell'oggetto separati da virgole. I valori delle proprietà vengono convertiti in stringhe (tramite il metodo ToString() dell'oggetto), pertanto sono in genere rappresentati dal nome del valore della proprietà. Export-CSV non esporta i metodi dell'oggetto.

Il formato di un file esportato è il seguente:

-- La prima riga del file CSV contiene la stringa '#TYPE' seguita dal nome completo del tipo .NET Framework dell'oggetto, ad esempio #TYPE System.Diagnostics.Process. Per eliminare questa riga, utilizzare il parametro NoTypeInformation.

-- Nella riga successiva del file CSV sono rappresentate le intestazioni di colonna È incluso un elenco dei nomi di tutte le proprietà del primo oggetto separati da virgole.

-- Le righe aggiuntive del file sono costituite da elenchi di valori delle proprietà di ogni oggetto separati da virgole.

Esempio 1

C:\PS>get-process wmiprvse | select-object basePriority,ID,SessionID,WorkingSet | export-csv -path data.csv

Descrizione
-----------
Tramite questo comando alcune proprietà del processo wmiprvse verranno selezionate ed esportate in un file in formato CSV denominato data.csv.






Esempio 2

C:\PS>get-process | export-csv processes.csv 

C:\PS> get-process | export-csv processes.csv 

# In processes.csv

#TYPE System.Diagnostics.Process
__NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,...
Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS...
Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\...

Descrizione
-----------
Con questo comando gli oggetti che rappresentano i processi nel computer vengono esportati nel file Processes.csv nella directory corrente. Poiché non viene specificato un delimitatore, viene utilizzata la virgola (,) per separare i campi nel file.






Esempio 3

C:\PS>get-process | export-csv processes.csv -Delimiter ";" 

# In processes.csv

#TYPE System.Diagnostics.Process
__NounName;Name;Handles;VM;WS;PM;NPM;Path;Company;CPU;FileVersion;...
Process;powershell;626;201666560;76058624;61943808;11960;C:\WINDOWS...
Process;powershell;257;151920640;38322176;37052416;7836;C:\WINDOWS\...

Descrizione
-----------
Con questo comando gli oggetti che rappresentano i processi nel computer vengono esportati nel file Processes.csv nella directory corrente. Viene utilizzato il parametro Delimiter per specificare il punto e virgola (;). Di conseguenza i campi nel file vengono separati da punti e virgola.






Esempio 4

C:\PS>get-process | export-csv processes.csv -UseCulture

Descrizione
-----------
Con questo comando gli oggetti che rappresentano i processi nel computer vengono esportati nel file Processes.csv nella directory corrente. Viene utilizzato il parametro UseCulture per fare in modo che Export-CSV utilizzi il delimitatore specificato dalla proprietà ListSeparator delle impostazioni cultura correnti.






Esempio 5

C:\PS>get-process | export-csv processes.csv -NoTypeInformation

C:\PS> get-process | export-csv processes.csv -NoTypeInformation

# In processes.csv

__NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,...
Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS...
Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\...

Descrizione
-----------
Con questo comando gli oggetti che rappresentano i processi nel computer vengono esportati nel file Processes.csv nella directory corrente. Viene utilizzato il parametro NoTypeInformation per eliminare le informazioni sui tipi nel file.






Vedere anche




Argomenti della Guida