Condividi tramite


Set-Item

Imposta il valore di un elemento sul valore specificato nel comando.

Sintassi

Set-Item
   [-Path] <String[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]
Set-Item
   -LiteralPath <String[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]

Descrizione

Il Set-Item cmdlet 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: Create 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 il parametro dinamico Options di Set-Item. Il parametro Options è disponibile solo Set-Item quando viene usato con il provider Alias o Function .

Set-Item -Path function:prompt -Options "AllScope,ReadOnly"

Parametri

-Confirm

Richiede la conferma dell'utente prima di eseguire il cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters: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 criterio di percorso, ad esempio *.txt. I caratteri jolly sono consentiti. Il parametro Exclude è valido solo quando il comando include il contenuto di un elemento, ad esempio C:\Windows\*, dove il carattere jolly specifica il contenuto della C:\Windows directory.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Filter

Specifica un filtro per qualificare il parametro Path . Il provider 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.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

Forza il cmdlet a impostare elementi che non possono altrimenti essere modificati, ad esempio alias o variabili di sola lettura. Il cmdlet non può cambiare alias o variabili costanti. L'implementazione varia a seconda del provider. Per altre informazioni, vedere about_Providers. Anche usando il parametro Force , il cmdlet non può eseguire l'override delle restrizioni di sicurezza.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 criterio di percorso, ad esempio "*.txt". I caratteri jolly sono consentiti. Il parametro Include è valido solo quando il comando include il contenuto di un elemento, ad esempio C:\Windows\*, dove il carattere jolly specifica il contenuto della C:\Windows directory.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-LiteralPath

Specifica un percorso di una o più posizioni. Il valore di LiteralPath viene usato esattamente come viene digitato. Nessun carattere viene interpretato come carattere 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.

Type:String[]
Aliases:PSPath
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Passa un oggetto che rappresenta l'elemento alla pipeline. Per impostazione predefinita, il cmdlet non genera alcun output.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Specifica un percorso della posizione degli elementi. I caratteri jolly sono consentiti.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-UseTransaction

Include il comando nella transazione attiva. Questo parametro è valido solo quando è in corso una transazione. Per altre informazioni, vedere about_Transactions.

Type:SwitchParameter
Aliases:usetx
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Value

Specifica il nuovo valore per l'elemento.

Type:Object
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Mostra l'esito in caso di esecuzione del cmdlet. Il cmdlet non viene eseguito.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

Object

È possibile inviare tramite pipe un oggetto che rappresenta il nuovo valore dell'elemento a questo cmdlet.

Output

None or an object representing the new or changed item.

Questo cmdlet genera un oggetto che rappresenta l'elemento, se si specifica il parametro PassThru . In caso contrario, il cmdlet non genera alcun output.

Note

  • Set-Item non è supportato dal provider FileSystem di PowerShell. Per modificare i valori degli elementi nel file system, usare il Set-Content cmdlet .
  • Nelle unità HKLM: del Registro di sistema e HKCU:, 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 New-Item cmdlet e Rename-Item .
    • Per modificare i nomi e i dati nei valori del Registro di sistema, usare i New-ItemPropertycmdlet , Set-ItemPropertye Rename-ItemProperty .
  • Set-Item è progettato per lavorare con i dati esposti da qualsiasi provider. Per elencare i provider disponibili nella sessione, digitare Get-PsProvider. Per altre informazioni, vedere about_Providers.