Megosztás a következőn keresztül:


Set-Variable

Egy változó értékét állítja be. Létrehozza a változót, ha a kért név nem létezik.

Syntax

Default (Alapértelmezett)

Set-Variable
    [-Name] <String[]>
    [[-Value] <Object>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Description <String>]
    [-Option <ScopedItemOptions>]
    [-Force]
    [-Visibility <SessionStateEntryVisibility>]
    [-PassThru]
    [-Scope <String>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

A Set-Variable parancsmag hozzárendel egy értéket egy adott változóhoz, vagy módosítja az aktuális értéket. Ha a változó nem létezik, a parancsmag létrehozza azt.

Példák

1. példa: Változó beállítása és értékének lekérése

Ezek a parancsok a $desc változó értékét A descriptionértékre állítják, majd lekéri a változó értékét.

Set-Variable -Name "desc" -Value "A description"
Get-Variable -Name "desc"
Name                           Value
----                           -----
desc                           A description

2. példa: Globális, írásvédett változó beállítása

Ez a példa létrehoz egy globális, írásvédett változót, amely a rendszeren lévő összes folyamatot tartalmazza, majd megjeleníti a változó összes tulajdonságát.

Set-Variable -Name "processes" -Value (Get-Process) -Option Constant -Scope Global -Description "All processes" -PassThru |
    Format-List -Property *

A parancs a Set-Variable parancsmaggal hozza létre a változót. A PassThru paraméter használatával hoz létre egy objektumot, amely az új változót jelöli, és a folyamatkezelő (|) használatával adja át az objektumot a Format-List parancsmagnak. A Format-List paraméterét használja az összes (*) értékkel az újonnan létrehozott változó összes tulajdonságának megjelenítéséhez.

Az érték ((Get-Process)) zárójelek közé van zárva, hogy a rendszer végrehajtsa azt, mielőtt a változóban tárolva lenne. Ellenkező esetben a változó a Get-Processszavakat tartalmazza.

3. példa: A nyilvános és a privát változók ismertetése

Ez a példa bemutatja, hogyan módosíthatja egy változó láthatóságát Private. Ezt a változót a szükséges engedélyekkel rendelkező szkriptek olvashatják és módosíthatják, de a felhasználó számára nem látható.

New-Variable -Name "counter" -Visibility Public -Value 26
$Counter
26
Get-Variable c*
Name                  Value
----                  -----
Culture               en-US
ConsoleFileName
ConfirmPreference     High
CommandLineParameters {}
Counter               26
Set-Variable -Name "counter" -Visibility Private
Get-Variable c*
Name                  Value
----                  -----
Culture               en-US
ConsoleFileName
ConfirmPreference     High
CommandLineParameters {}
$counter
"Cannot access the variable '$counter' because it is a private variable"
.\use-counter.ps1
#Commands completed successfully.

Ez a parancs bemutatja, hogyan módosíthatja egy változó láthatóságát privátra. Ezt a változót a szükséges engedélyekkel rendelkező szkriptek olvashatják és módosíthatják, de a felhasználó számára nem látható.

Paraméterek

-Confirm

Megerősítést kér a parancsmag futtatása előtt.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Cf

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Description

A változó leírását adja meg.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Exclude

Olyan elemtömböt ad meg, amelyet ez a parancsmag kizár a műveletből. Ennek a paraméternek az értéke a Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például *.txt. Helyettesítő karakterek használata engedélyezett.

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Force

Lehetővé teszi, hogy egy meglévő írásvédett változó nevével megegyező nevű változót hozzon létre, vagy módosítsa egy írásvédett változó értékét.

Alapértelmezés szerint felülírhat egy változót, kivéve, ha a változó értéke ReadOnly vagy Constant. További információ: Option paraméter.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Include

A parancsmag által a műveletben szereplő elemek tömbjének megadása. A paraméter értéke megfelel a Név paraméternek. Adjon meg egy nevet vagy névmintát, például c*. Helyettesítő karakterek használata engedélyezett.

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Name

Megadja a változó nevét.

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Option

A változó Beállítások tulajdonságának értékét adja meg.

Az érvényes értékek a következők:

  • None: Nem állít be beállításokat. (None az alapértelmezett.)
  • ReadOnly: Törölhető. Nem módosítható, kivéve a Force paramétert.
  • Constant: Nem törölhető vagy módosítható. Constant csak változó létrehozásakor érvényes. Meglévő változó beállításait nem módosíthatja Constantértékre.
  • Private: A változó csak az aktuális hatókörben érhető el.
  • AllScope: A rendszer a változót a létrehozott új hatókörökbe másolja.

Ezek az értékek jelölőalapú számbavételként vannak definiálva. Több érték kombinálásával több jelölőt is beállíthat ezzel a paraméterrel. Az értékek átadhatók a Option paraméternek értéktömbként vagy az értékek vesszővel elválasztott sztringjeként. A parancsmag bináris VAGY művelettel egyesíti az értékeket. Az értékek tömbként való átadása a legegyszerűbb lehetőség, és lehetővé teszi a tabulátorkiegészítés használatát is az értékeken.

Paramétertulajdonságok

Típus:ScopedItemOptions
Alapértelmezett érték:None
Elfogadott értékek:None, ReadOnly, Constant, Private, AllScope, Unspecified
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-PassThru

Az új változót képviselő objektumot ad vissza. Ez a parancsmag alapértelmezés szerint nem hoz létre kimenetet.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Scope

Megadja a változó hatókörét. A paraméter elfogadható értékei a következők:

  • Global
  • Local
  • Script
  • Private
  • Az aktuális hatókörhöz viszonyított szám (0 a hatókörök számán keresztül, ahol a 0 az aktuális hatókör, az 1 pedig a szülője).

A Local az alapértelmezett.

További információ található a about_Scopesrészben.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:Local
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Value

A változó értékét adja meg.

Paramétertulajdonságok

Típus:Object
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:1
Kötelező:False
Folyamatból származó érték:True
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Visibility

Meghatározza, hogy a változó látható-e azon a munkameneten kívül, amelyben létrejött. Ez a paraméter olyan szkriptekben és parancsokban való használatra lett kialakítva, amelyek más felhasználók számára lesznek kézbesítve.

Az érvényes értékek a következők:

  • Public: A változó látható. (Public az alapértelmezett.)
  • Private: A változó nem látható.

Ha egy változó privát, akkor nem jelenik meg a változók listájában, például a Get-Variableáltal visszaadott listákban, illetve a változó: meghajtó megjelenítésében. A privát változók értékének olvasására vagy módosítására szolgáló parancsok hibát adnak vissza. A felhasználó azonban futtathat privát változót használó parancsokat, ha a parancsok abban a munkamenetben lettek megírva, amelyben a változót definiálták.

Paramétertulajdonságok

Típus:SessionStateEntryVisibility
Alapértelmezett érték:Public
Elfogadott értékek:Public, Private
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-WhatIf

Megjeleníti, mi történne, ha a parancsmag futna. A parancsmag nem fut.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Wi

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

Object

A változó értékét képviselő objektumot erre a parancsmagra csövezheti.

Kimenetek

None

Ez a parancsmag alapértelmezés szerint nem ad vissza kimenetet.

PSVariable

A PassThru paraméter használatakor ez a parancsmag egy PSVariable objektumot ad vissza, amely az új vagy módosított változót jelöli.

Jegyzetek

A PowerShell a következő aliasokat tartalmazza Set-Variable:

  • Minden platform:
    • set
    • sv