Get-ChildItem
Ottiene gli elementi e gli elementi figlio in una o più posizioni specificate.
Sintassi
Get-ChildItem [[-Path] <string[]>] [[-Filter] <string>] [-Exclude <string[]>] [-Force] [-Include <string[]>] [-Name] [-Recurse] [-UseTransaction] [<CommonParameters>]
Get-ChildItem [-LiteralPath] <string[]> [[-Filter] <string>] [-Exclude <string[]>] [-Force] [-Include <string[]>] [-Name] [-Recurse] [-UseTransaction] [<CommonParameters>]
Descrizione
Il cmdlet Get-ChildItem ottiene gli elementi in una o più posizioni specificate. Se l'elemento è un contenitore, ottiene gli elementi all'interno del contenitore, denominati elementi figlio. È possibile utilizzare il parametro Recurse per ottenere gli elementi in tutti i contenitori figlio.
Un percorso può essere un percorso del file system, ad esempio una directory, oppure un percorso esposto da un altro provider, ad esempio un hive del Registro di sistema o un archivio certificati.
Parametri
-Exclude <string[]>
Omette gli elementi specificati. Il valore di questo parametro qualifica il parametro Path. Immettere un criterio o un elemento del percorso, ad esempio "*.txt". È consentito l'utilizzo di caratteri jolly.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-Filter <string>
Specifica un filtro nel formato o nel linguaggio del provider. Il valore di questo parametro qualifica il parametro Path. La sintassi del filtro, incluso l'utilizzo dei caratteri jolly, dipende dal provider. I filtri sono più efficienti rispetto ad altri parametri, perché il provider li applica al momento del recupero degli oggetti, anziché utilizzare Windows PowerShell per filtrare gli oggetti dopo il recupero.
Obbligatorio? |
false |
Posizione? |
2 |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-Force
Consente al cmdlet di ottenere elementi altrimenti inaccessibili all'utente, ad esempio file nascosto o di sistema. L'implementazione varia a seconda del provider. Per ulteriori informazioni, vedere about_Providers. Quando si utilizza il parametro Force, il cmdlet non può ignorare le limitazioni di sicurezza.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-Include <string[]>
Recupera unicamente gli elementi specificati. Il valore di questo parametro qualifica il parametro Path. Immettere un criterio o un elemento del percorso, ad esempio "*.txt". È consentito l'utilizzo di caratteri jolly.
Il parametro Include ha effetto solo quando il comando include il parametro Recurse o il percorso porta al contenuto di una directory, ad esempio C:\Windows\*, dove il carattere jolly specifica il contenuto della directory C:\Windows.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-LiteralPath <string[]>
Specifica un percorso di una o più posizioni. A differenza di Path, il valore di LiteralPath viene utilizzato così come viene digitato. Nessun carattere viene interpretato come carattere jolly. Se il percorso include caratteri di escape, è necessario racchiuderli tra virgolette singole tramite le quali si comunica a Windows PowerShell di non interpretare alcun carattere come sequenza di escape.
Obbligatorio? |
true |
Posizione? |
1 |
Valore predefinito |
|
Accettare input da pipeline? |
true (ByPropertyName) |
Accettare caratteri jolly? |
false |
-Name
Recupera unicamente i nomi degli elementi nelle posizioni. Se si reindirizza l'output di questo comando a un altro comando, vengono inviati solo i nomi degli elementi.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-Path <string[]>
Specifica un percorso di una o più posizioni. È consentito l'utilizzo di caratteri jolly. La posizione predefinita è la directory corrente (.).
Obbligatorio? |
false |
Posizione? |
1 |
Valore predefinito |
|
Accettare input da pipeline? |
true (ByValue, ByPropertyName) |
Accettare caratteri jolly? |
false |
-Recurse
Ottiene gli elementi nelle posizioni specificate e in tutti gli elementi figlio delle posizioni.
Recurse funziona solo quando il percorso punta a un contenitore con elementi figlio, ad esempio C:\Windows o C:\Windows\*, non quando punta a elementi privi di elementi figlio, ad esempio C:\Windows\*.exe.
Obbligatorio? |
false |
Posizione? |
named |
Valore predefinito |
|
Accettare input da pipeline? |
false |
Accettare caratteri jolly? |
false |
-UseTransaction
Include il comando nella transazione attiva. Questo parametro è valido solo quando è in corso una transazione. Per ulteriori informazioni, vedere about_Transactions.
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.String È possibile reindirizzare una stringa che contiene un percorso a Get-ChildItem. |
Output |
Oggetto. Il tipo di oggetto restituito da Get-ChildItem è determinato dal provider con il quale viene utilizzato. |
Note
È inoltre possibile fare riferimento a Get-ChildItem tramite i relativi alias predefiniti "ls", "dir" e "gci". Per ulteriori informazioni, vedere about_Aliases.
Get-ChildItem non ottiene gli elementi nascosti per impostazione predefinita. Per ottenere gli elementi nascosti, utilizzare -Force.
Il cmdlet Get-ChildItem è progettato per l'utilizzo di dati esposti da qualsiasi provider. Per elencare i provider disponibili nella sessione, digitare "Get-PsProvider". Per ulteriori informazioni, vedere about_Providers.
Esempio 1
C:\PS>get-childitem
Descrizione
-----------
Con questo comando si ottengono gli elementi figlio nella posizione corrente. Se la posizione è una directory del file system, si ottengono i file e le sottodirectory nella directory corrente. Se l'elemento non contiene elementi figlio, questo comando torna alla riga di comando senza visualizzare alcuna informazione.
Nella visualizzazione predefinita vengono elencati la modalità (attributi), l'ora dell'ultima scrittura, le dimensioni (lunghezza) e il nome del file. I valori validi per la modalità sono d (directory), a (archivio), r (sola lettura), h (nascosto) ed s (sistema).
Esempio 2
C:\PS>get-childitem . -include *.txt -recurse -force
Descrizione
-----------
Con questo comando vengono recuperati tutti i file txt nella directory corrente e le relative sottodirectory. Il punto (.) rappresenta la directory corrente e il parametro Include specifica l'estensione del nome file. Con il parametro Recurse viene indicato a Windows PowerShell di recuperare gli oggetti in modalità ricorsiva e che l'oggetto del comando è la directory specificata e il relativo contenuto. Con il parametro force vengono aggiunti file alla visualizzazione.
Esempio 3
C:\PS>get-childitem c:\windows\logs\* -include *.txt -exclude A*
Descrizione
-----------
Con questo comando vengono elencati i file txt nella sottodirectory Logs, a eccezione dei file il cui nome inizia con la lettera A. Il carattere jolly (*) viene utilizzato per indicare il contenuto della sottodirectory Logs, non il contenitore della directory. Poiché il comando non include il parametro Recurse, Get-ChildItem non include automaticamente il contenuto della directory. È necessario specificarlo.
Esempio 4
C:\PS>get-childitem registry::hklm\software
Descrizione
-----------
Con questo comando vengono recuperate tutte le chiavi del Registro di sistema nella chiave HKEY_LOCAL_MACHINE\SOFTWARE nel Registro di sistema del computer locale.
Esempio 5
C:\PS>get-childitem -name
Descrizione
-----------
Con questo comando vengono recuperati unicamente i nomi degli elementi nella directory corrente.
Esempio 6
C:\PS>get-childitem cert:\. -recurse -codesigningcert
Descrizione
-----------
Con questo comando vengono ottenuti tutti i certificati nell'archivio certificati con autorità di firma del codice.
Viene utilizzato il cmdlet Get-ChildItem. Il percorso specifica l'unità Cert: esposta dal provider di certificati di Windows PowerShell. Il simbolo di barra rovesciata (\) specifica una sottodirectory dell'archivio certificati e il punto (.) rappresenta la directory corrente, ovvero la directory radice dell'archivio certificati. Il parametro Recurse specifica una ricerca ricorsiva.
Il parametro CodeSigningCertificate è un parametro dinamico che ottiene solo i certificati con autorità di firma del codice. Per ulteriori informazioni, digitare "get-help certificate".
Esempio 7
C:\PS>get-childitem * -include *.exe
Descrizione
-----------
Con questo comando vengono recuperati tutti gli elementi nella directory corrente con estensione exe. Il carattere jolly (*) rappresenta il contenuto della directory corrente, non il contenitore. Quando si utilizza il parametro Include senza il parametro Recurse, il percorso deve puntare al contenuto, non a un contenitore.