Set-Item
Modifica il valore di un elemento nel valore specificato nel comando .
Sintassi
Set-Item
[-Path] <String[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-Item
-LiteralPath <String[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-Item
[-Path] <string[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
Set-Item
[[-Value] <Object>]
-LiteralPath <string[]>
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
Set-Item
[-Path] <string[]>
[[-Value] <Object>]
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-Item
[[-Value] <Object>]
-LiteralPath <string[]>
[-Force]
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Descrizione
Il cmdlet Set-Item
modifica il valore di un elemento, ad esempio una variabile o una chiave del Registro di sistema, al valore specificato nel comando.
Esempio
Esempio 1: Creare un alias
Questo comando crea un alias di np per Blocco note.
Set-Item -Path Alias:np -Value "C:\windows\notepad.exe"
Esempio 2: Modificare il valore di una variabile di ambiente
Questo comando modifica il valore della variabile di ambiente UserRole in Administrator.
Set-Item -Path Env:UserRole -Value "Administrator"
Esempio 3: Modificare la funzione prompt
Questo comando modifica la funzione del prompt in modo che visualizzi l'ora prima del percorso.
Set-Item -Path Function:prompt -Value {'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '}
Esempio 4: Impostare le opzioni per la funzione prompt
Questo comando imposta le opzioni AllScope e ReadOnly per la funzione prompt.
Questo comando usa Options parametro dinamico di Set-Item
.
Il parametro Options è disponibile in Set-Item
solo quando viene usato con il provider di alias o funzione.
Set-Item -Path Function:prompt -Options "AllScope,ReadOnly"
Parametri
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Credential
Nota
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.
Tipo: | PSCredential |
Posizione: | Named |
Valore predefinito: | Current user |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-Exclude
Specifica, come matrice di stringhe, un elemento o elementi esclusi dal cmdlet 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 Exclude è effettivo solo quando il comando include il contenuto di un elemento, ad esempio C:\Windows\*
, in cui il carattere jolly specifica il contenuto della directory C:\Windows
.
Tipo: | String[] |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | True |
-Filter
Specifica un filtro per qualificare il parametro Path. Il provider di FileSystem è l'unico provider di PowerShell installato che supporta l'uso dei filtri. È possibile trovare la sintassi per il linguaggio di filtro FileSystem in about_Wildcards. I filtri sono più efficienti rispetto ad altri parametri, perché il provider li applica quando il cmdlet ottiene gli oggetti anziché filtrare gli oggetti dopo il recupero.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | True |
-Force
Forza il cmdlet a impostare elementi che altrimenti non possono essere modificati, ad esempio alias o variabili di sola lettura. Il cmdlet non può modificare gli alias costanti o le variabili. L'implementazione varia da provider a provider. Per altre informazioni, vedere about_Providers. Anche usando il parametro Force, il cmdlet non può eseguire l'override delle restrizioni di sicurezza.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Include
Specifica, come matrice di stringhe, un elemento o elementi inclusi nel cmdlet 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 Includi è effettivo solo quando il comando include il contenuto di un elemento, ad esempio C:\Windows\*
, in cui il carattere jolly specifica il contenuto della directory C:\Windows
.
Tipo: | String[] |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | True |
-LiteralPath
Specifica un percorso per una o più posizioni. Il valore di LiteralPath viene usato esattamente come viene tipizzato. Nessun carattere viene interpretato come caratteri jolly. Se il percorso include caratteri di escape, racchiuderlo 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.
Tipo: | String[] |
Alias: | PSPath, LP |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-Options
Si tratta di un parametro dinamico reso disponibile dai provider di alias e funzione. Per altre informazioni, vedere about_Alias_Provider e about_Function_Provider.
Specifica il valore della proprietà opzioni di di un alias.
I valori validi sono:
-
None
: l'alias non ha vincoli (valore predefinito) -
ReadOnly
: l'alias può essere eliminato ma non può essere modificato senza usare il parametro Force -
Constant
: l'alias non può essere eliminato o modificato -
Private
: l'alias è disponibile solo nell'ambito corrente -
AllScope
: l'alias viene copiato in tutti i nuovi ambiti creati -
Unspecified
: l'opzione non è specificata
Tipo: | ScopedItemOptions |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-PassThru
Passa un oggetto che rappresenta l'elemento alla pipeline. Per impostazione predefinita, questo cmdlet non genera alcun output.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Path
Specifica un percorso della posizione degli elementi. Sono consentiti caratteri jolly.
Tipo: | String[] |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | True |
-Type
Si tratta di un parametro dinamico reso disponibile dal provider di del Registro di sistema. Il provider del Registro di sistema e questo parametro è disponibile solo in Windows.
Specifica il tipo di proprietà aggiunta da questo cmdlet. I valori accettabili per questo parametro sono:
-
String
: specifica una stringa con terminazione Null. Utilizzato per i valori di REG_SZ. -
ExpandString
: specifica una stringa con terminazione Null contenente riferimenti non espansi alle variabili di ambiente espanse quando viene recuperato il valore. Utilizzato per i valori REG_EXPAND_SZ. -
Binary
: specifica i dati binari in qualsiasi formato. Utilizzato per i valori di REG_BINARY. -
DWord
: specifica un numero binario a 32 bit. Utilizzato per i valori di REG_DWORD. -
MultiString
: specifica una matrice di stringhe con terminazione Null di due caratteri Null. Utilizzato per i valori REG_MULTI_SZ. -
Qword
: specifica un numero binario a 64 bit. Utilizzato per i valori di REG_QWORD. -
Unknown
: indica un tipo di dati del Registro di sistema non supportato, ad esempio REG_RESOURCE_LIST valori.
Tipo: | RegistryValueKind |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-Value
Specifica un nuovo valore per l'elemento.
Tipo: | Object |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-WhatIf
Mostra cosa accadrebbe se il cmdlet viene eseguito. Il cmdlet non viene eseguito.
Tipo: | SwitchParameter |
Alias: | wi |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
È possibile inviare tramite pipe un oggetto che rappresenta il nuovo valore dell'elemento a questo cmdlet.
Output
None
Per impostazione predefinita, questo cmdlet non restituisce alcun output.
Quando si utilizza il parametro PassThru, questo cmdlet restituisce un oggetto che rappresenta l'elemento.
Note
PowerShell include gli alias seguenti per Set-Item
:
Tutte le piattaforme:
si
Set-Item
non è supportato dal provider FileSystem di PowerShell. Per modificare i valori degli elementi nel file system, usare il cmdletSet-Content
.Nelle unità del Registro di sistema,
HKLM:
eHKCU:
,Set-Item
modifica i dati nel valore (predefinito) di una chiave del Registro di sistema.- Per creare e modificare i nomi delle chiavi del Registro di sistema, usare il cmdlet
New-Item
eRename-Item
. - Per modificare i nomi e i dati nei valori del Registro di sistema, usare i cmdlet
New-ItemProperty
,Set-ItemProperty
eRename-ItemProperty
.
- Per creare e modificare i nomi delle chiavi del Registro di sistema, usare il cmdlet
Set-Item
è progettato per lavorare con i dati esposti da qualsiasi provider. Per elencare i provider disponibili nella sessione, digitareGet-PSProvider
. Per altre informazioni, vedere about_Providers.