Get-Item
Ottiene l'elemento nella posizione specificata.
Sintassi
Path (Impostazione predefinita)
Get-Item
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-Stream <String[]>]
[<CommonParameters>]
LiteralPath
Get-Item
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-Stream <String[]>]
[<CommonParameters>]
Descrizione
Il cmdlet Get-Item ottiene l'elemento alla posizione specificata. Non ottiene il contenuto dell'elemento nella posizione, a meno che non si usi un carattere jolly (*) per richiedere tutto il contenuto dell'elemento.
Questo cmdlet viene usato dai provider di PowerShell per spostarsi tra diversi tipi di archivi dati.
Esempio
Esempio 1: Recuperare la directory corrente
In questo esempio viene ottenuta la directory corrente. Il punto ('.') rappresenta l'elemento nella posizione corrente (non il relativo contenuto).
Get-Item .
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 10:01 AM ps-test
Esempio 2: Ottenere tutti gli elementi nella directory corrente
In questo esempio vengono restituiti tutti gli elementi della directory corrente. Il carattere universale (*) rappresenta tutto il contenuto dell'elemento corrente.
Get-Item *
Directory: C:\ps-test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 9:29 AM Logs
d---- 7/26/2006 9:26 AM Recs
-a--- 7/26/2006 9:28 AM 80 date.csv
-a--- 7/26/2006 10:01 AM 30 filenoext
-a--- 7/26/2006 9:30 AM 11472 process.doc
-a--- 7/14/2006 10:47 AM 30 test.txt
Esempio 3: Ottenere la directory corrente di un'unità
In questo esempio viene recuperata la directory corrente dell'unità C:. L'oggetto recuperato rappresenta solo la directory, non il relativo contenuto.
Get-Item C:
Esempio 4: Recuperare gli elementi sull'unità specificata
Questo esempio ottiene i file nell'unità C:. Il carattere jolly (*) rappresenta tutti gli elementi nel contenitore, non solo il contenitore.
Get-Item C:\*
In PowerShell usare un singolo asterisco (*) per ottenere il contenuto, anziché il tradizionale *.*. Il formato viene interpretato letteralmente, quindi *.* non recupererebbe directory o nomi file senza un punto.
Esempio 5: Ottenere una proprietà nella directory specificata
In questo esempio viene recuperata la proprietà LastAccessTime della directory C:\Windows.
LastAccessTime è solo una proprietà delle directory del file system. Per visualizzare tutte le proprietà di una directory, digitare (Get-Item <directory-name>) | Get-Member.
(Get-Item C:\Windows).LastAccessTime
Esempio 6: Visualizzare il contenuto di una chiave del Registro di sistema
Questo esempio mostra il contenuto della chiave del Registro di sistema Microsoft.PowerShell. È possibile usare questo cmdlet con il provider del Registro di sistema di PowerShell per ottenere chiavi e sottochiavi del Registro di sistema, ma è necessario usare il cmdlet Get-ItemProperty per ottenere i valori e i dati del Registro di sistema.
Get-Item HKLM:\Software\Microsoft\Powershell\1\Shellids\Microsoft.Powershell\
Esempio 7: Ottenere gli elementi in una directory che hanno un'esclusione
Questo esempio recupera gli elementi nella directory di Windows con nomi che includono un punto (.), ma che non iniziano con w*. Questo esempio funziona solo quando il percorso include un carattere jolly (*) per specificare i contenuti dell'elemento.
Get-Item C:\Windows\*.* -Exclude "w*"
Esempio 8: Recupero di informazioni sul collegamento rigido
In PowerShell 6.2 è stata aggiunta una visualizzazione alternativa per ottenere informazioni sul collegamento rigido. Per ottenere le informazioni sul collegamento rigido, inviare tramite pipe l'output a Format-Table -View childrenWithHardlink
Get-Item C:\Windows\System32\ntoskrnl.exe | Format-Table -view childrenWithHardLink
Directory: C:\Windows\System32
Mode LastWriteTime Length Name
---- ------------- ------ ----
la--- 5/12/2021 7:40 AM 10848576 ntoskrnl.exe
La proprietà Mode identifica il collegamento hardlink con il l in la---
Esempio 9: output per sistemi operativi non Windows
In PowerShell 7.1 nei sistemi Unix, il cmdlet Get-Item fornisce output simile a Unix:
PS> Get-Item /Users
Directory: /
UnixMode User Group LastWriteTime Size Name
-------- ---- ----- ------------- ---- ----
drwxr-xr-x root admin 12/20/2019 11:46 192 Users
Le nuove proprietà che fanno ora parte dell'output sono:
- UnixMode è costituito dalle autorizzazioni per i file rappresentate in un sistema Unix
- User è il proprietario del file
- Group è il proprietario del gruppo
- Dimensione è la dimensione del file o della directory come rappresentato in un sistema Unix
Annotazioni
Questa funzionalità è stata spostata da sperimentale a mainstream in PowerShell 7.1.
Parametri
-Credential
Annotazioni
Questo parametro non è supportato da alcun provider installato con PowerShell. Per rappresentare un altro utente o elevare le credenziali quando si esegue questo cmdlet, usare Invoke-Command.
Proprietà dei parametri
| Tipo: | PSCredential |
| Valore predefinito: | Current user |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Exclude
Specifica, come array di stringhe, uno o più elementi che questo cmdlet esclude durante l'operazione. Il valore di questo parametro qualifica il parametro Path. Immettere un elemento o un modello di percorso, ad esempio *.txt. Sono consentiti caratteri jolly. Il parametro Exclude è valido solo quando il comando include il contenuto di un elemento, ad esempio C:\Windows\*, nel quale il carattere jolly specifica il contenuto della directory C:\Windows.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | True |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Filter
Specifica un filtro per qualificare il parametro Path. Il provider di FileSystem è l'unico provider di PowerShell installato che supporta i filtri. I filtri sono più efficienti rispetto ad altri parametri. Il provider applica un filtro quando il cmdlet ottiene gli oggetti, anziché lasciare che sia PowerShell a filtrare gli oggetti dopo il loro recupero. La stringa di filtro viene passata all'API .NET per enumerare i file. L'API supporta solo i caratteri jolly * e ?.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | True |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Force
Indica che questo cmdlet ottiene elementi a cui non è possibile accedere altrimenti, ad esempio elementi nascosti. L'implementazione varia da provider a provider. Per altre informazioni, consultare about_Providers. Anche usando il parametro Force, il cmdlet non può eseguire l'override delle restrizioni di sicurezza.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Include
Specifica, sotto forma di matrice di stringhe, un elemento o elementi che questo cmdlet include nell'operazione. Il valore di questo parametro qualifica il parametro Path. Immettere un elemento o un modello di percorso, ad esempio *.txt. Sono consentiti caratteri jolly. Il parametro Include è efficace solo quando il comando include il contenuto di un elemento, ad esempio C:\Windows\*, dove il carattere jolly specifica il contenuto della directory C:\Windows.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | True |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-LiteralPath
Specifica un percorso per una o più posizioni. Il valore di LiteralPath viene usato esattamente come viene digitato. Nessun carattere viene interpretato come metacaratteri. Se il percorso include caratteri di escape, racchiudilo tra virgolette singole. Le virgolette singole indicano a PowerShell di non interpretare alcun carattere come sequenze di escape.
Per altre informazioni, vedere about_Quoting_Rules.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | PSPath, UP |
Set di parametri
LiteralPath
| Posizione: | Named |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Path
Specifica il percorso di un elemento. Questo cmdlet ottiene l'elemento nella posizione specificata. Sono consentiti caratteri jolly. Questo parametro è obbligatorio, ma il nome del parametro Path è facoltativo.
Usare un punto (.) per specificare la posizione corrente. Usare il carattere jolly (*) per specificare tutti gli elementi nella locazione corrente.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | True |
| DontShow: | False |
Set di parametri
Path
| Posizione: | 0 |
| Obbligatorio: | True |
| Valore dalla pipeline: | True |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Stream
Annotazioni
Questo parametro è disponibile solo in Windows.
Ottiene il flusso di file NTFS alternativo specificato dal file. Immettere il nome del flusso. Sono supportati caratteri jolly. Per ottenere tutti i flussi, usare un asterisco (*). Questo parametro non è valido nelle cartelle.
Stream è un parametro dinamico aggiunto dal provider FileSystem al cmdlet Get-Item.
Questo parametro funziona solo nelle unità del sistema di file.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | No alternate file streams |
| Supporta i caratteri jolly: | True |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
CommonParameters
Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.
Input
String
È possibile inviare tramite pipe una stringa contenente un percorso a questo cmdlet.
Output
Object
Questo cmdlet restituisce gli oggetti che ottiene. Il tipo è determinato dal tipo di oggetti nel percorso.
Note
Questo cmdlet non dispone di un parametro Recurse, perché ottiene solo un elemento, non il relativo contenuto.
Per ottenere il contenuto di un elemento in modo ricorsivo, usare Get-ChildItem.
Per spostarsi nel Registro di sistema, usare questo cmdlet per ottenere le chiavi del Registro di sistema e il Get-ItemProperty per ottenere i valori e i dati del Registro di sistema. I valori del Registro di sistema vengono considerati proprietà della chiave del Registro di sistema.
Questo cmdlet è progettato per lavorare con i dati esposti da qualsiasi provider. Per elencare i provider disponibili nella sessione, digitare Get-PsProvider. Per altre informazioni, consultare about_Providers.