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 affinché 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 utilizza il parametro dinamico Opzioni di Set-Item
.
Il parametro Options è disponibile in Set-Item
solo quando viene usato con alias o funzione provider.
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 ulteriori informazioni, fare riferimento a 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 un elemento o più elementi che questo cmdlet include nell'operazione, come matrice di stringhe. 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 è valido 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 dell'Alias e della 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 del Registro . Il provider del Registro e questo parametro sono disponibili solo su 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 terminate da un carattere null, con una terminazione finale 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 ulteriori informazioni, fare riferimento a about_Providers.