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

PS C:\> Set-Variable -Name "desc" -Value "A description"
PS C:\> Get-Variable -Name "desc"

Ezek a parancsok a desc változó értékét egy leírásra állítják be, majd lekéri a változó értékét.

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

PS C:\> Set-Variable -Name "processes" -Value (Get-Process) -Option constant -Scope global -Description "All processes" -PassThru | Format-List -Property *

Ez a parancs 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.

A parancs a Set-Variable parancsmagot használja a változó létrehozásához. A PassThru paramétert használja az új változót képviselő objektum létrehozásához, és a folyamatkezelő (|) használatával továbbítja az objektumot a Format-List parancsmagnak. A Format-List Tulajdonság paraméterét használja az összes (*) értékkel az újonnan létrehozott változó összes tulajdonságának megjelenítéséhez.

A(z) "(Get-Process)" érték zárójelben van megadva, hogy a függvény végrehajtása a változóban való tárolás előtt történjen. Ellenkező esetben a változó a "Get-Process" szavakat tartalmazza.

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

PS C:\> New-Variable -Name "counter" -Visibility Public -Value 26
PS C:\> $Counter
26
PS C:\> Get-Variable c*

Name                  Value
----                  -----
Culture               en-US
ConsoleFileName
ConfirmPreference     High
CommandLineParameters {}
Counter               26

PS C:\> Set-Variable -Name "counter" -Visibility Private
PS C:\> Get-Variable c*

Name                  Value
----                  -----
Culture               en-US
ConsoleFileName
ConfirmPreference     High
CommandLineParameters {}

 PS C:\> $counter
"Cannot access the variable '$counter' because it is a private variable"

PS C:\> .\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ó.

A mintakimenet a nyilvános és a privát változók viselkedésének különbségét mutatja.

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ónak van egy ReadOnly vagy Állandó értékű beállításértéke. 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:

  • Nincs: Nincs beállítás. ("Nincs" az alapértelmezett érték.)
  • ReadOnly: Törölhető. Nem módosítható, kivéve a Force paramétert.
  • Állandó: Nem törölhető vagy módosítható. A "Konstans" csak változó létrehozásakor érvényes. Egy meglévő változó beállításait nem módosíthatja "Állandó" értékre.
  • Privát: 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.

A munkamenet összes változójának Beállítások tulajdonságának megtekintéséhez írja be a Get-Variable | Format-Table -Property name, options -Autosize.

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:

  • Globális
  • Helyi
  • Szkript
  • Privát
  • 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 helyi 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:

  • Nyilvános: A változó látható. ("Nyilvános" az alapértelmezett érték.)
  • Privát: A változó nem látható.

Ha egy változó privát, nem jelenik meg a változók listájában, például a Get-Variable által visszaadott listákban vagy a Változó: meghajtó kijelzőiben. 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 set-variable.

Kimenetek

None or System.Management.Automation.PSVariable

A PassThru paraméter használatakor Set-Variable létrehoz egy System.Management.Automation.PSVariable objektumot, amely az új vagy módosított változót jelöli. Ellenkező esetben ez a parancsmag nem hoz létre kimenetet.