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


New-Variable

Létrehoz egy új változót.

Syntax

Default (Alapértelmezett)

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

Description

A New-Variable parancsmag létrehoz egy új változót a PowerShellben. A változó létrehozásakor, illetve az érték hozzárendelése vagy módosítása után is hozzárendelhet egy értéket a változóhoz.

A New-Variable paramétereivel beállíthatja a változó tulajdonságait, beállíthatja egy változó hatókörét, és meghatározhatja, hogy a változók nyilvánosak vagy privátak-e.

Általában új változót hoz létre a változó nevének és értékének (például $Var = 3) beírásával, de a paramétereket a New-Variable parancsmaggal is használhatja.

Példák

1. példa: Változó létrehozása

New-Variable days

Ez a parancs létrehoz egy nap nevű új változót. Nem kell beírnia a Név paramétert.

2. példa: Változó létrehozása és érték hozzárendelése

New-Variable -Name "zipcode" -Value 98033

Ez a parancs létrehoz egy irányítószám nevű változót, és hozzárendeli a 98033-at.

3. példa: Változó létrehozása a ReadOnly beállítással

PS C:\> New-Variable -Name Max -Value 256 -Option ReadOnly
PS C:\> New-Variable -Name max -Value 1024

New-Variable : A variable with name 'max' already exists.
At line:1 char:1
+ New-Variable -Name max -Value 1024
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ResourceExists: (max:String) [New-Variable], SessionStateException
    + FullyQualifiedErrorId : VariableAlreadyExists,Microsoft.PowerShell.Commands.NewVariableCommand

PS C:\> New-Variable -Name max -Value 1024 -Force

Ez a példa bemutatja, hogyan védheti meg a változót a ReadOnlyNew-Variable lehetőségével.

Az első parancs létrehoz egy Max nevű új változót, és 256-ra állítja az értékét. A Option paramétert használja ReadOnlyértékkel.

A második parancs egy második változót próbál létrehozni ugyanazzal a névvel. Ez a parancs hibát ad vissza, mert az írásvédett beállítás be van állítva a változón.

A harmadik parancs a Force paramétert használja a változó írásvédett védelmének felülbírálásához. Ebben az esetben az azonos nevű új változó létrehozásához használt parancs sikeres.

4. példa: Több beállítás hozzárendelése egy változóhoz

New-Variable -Name 'TestVariable' -Value 'Test Value' -Option AllScope,Constant

Ez a példa létrehoz egy változót, és hozzárendeli a AllScope és Constant beállításokat, hogy a változó elérhető legyen az aktuális hatókörben, valamint a létrehozott új hatókörökben, és ne lehessen módosítani vagy törölni.

5. példa: Privát változó létrehozása

Ez a parancs bemutatja egy privát változó viselkedését egy modulban. A modul tartalmazza a Get-Counter parancsmagot, amely számláló nevű privát változóval rendelkezik. A parancs a Láthatóság paramétert használja privát értékkel a változó létrehozásához.

PS C:\> New-Variable -Name counter -Visibility Private

#Effect of private variable in a module.

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"
At line:1 char:1
+ $counter
+ ~~~~~~~~
    + CategoryInfo          : PermissionDenied: (counter:String) [], SessionStateException
    + FullyQualifiedErrorId : VariableIsPrivate

PS C:\> Get-Counter
Name         Value
----         -----
Counter1     3.1415
...

A mintakimenet egy privát változó viselkedését mutatja. A modult betöltött felhasználó nem tekintheti meg vagy módosíthatja a Számláló változó értékét, de a Számláló változót a modul parancsai olvashatják és módosíthatják.

6. példa: Változó létrehozása szóközzel

Ez a példa bemutatja, hogy szóközökkel rendelkező változók hozhatók létre. A változók a Get-Variable parancsmaggal vagy közvetlenül egy kapcsos zárójelekkel elválasztott változóval érhetők el.

PS C:\> New-Variable -Name 'with space' -Value 'abc123xyz'

PS C:\> Get-Variable -Name 'with space'

Name                           Value
----                           -----
with space                     abc123xyz

PS C:\> ${with space}
abc123xyz

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

-Force

Azt jelzi, hogy a parancsmag egy olyan változót hoz létre, amelynek neve megegyezik egy meglévő írásvédett változó nevével.

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

Paramétertulajdonságok

Típus:SwitchParameter
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

-Name

Megadja az új 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. A paraméter elfogadható értékei a következők:

  • None – Nem állít be beállításokat. A None az alapértelmezett.
  • ReadOnly – Törölhető. Nem módosítható, kivéve a Force paramétert.
  • 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.
  • 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.

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.

A munkamenetben lévő összes változó 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

Azt az elemet képviselő objektumot adja vissza, amellyel dolgozik. Ez a parancsmag alapértelmezés szerint nem hoz létre kimenetet.

Paramétertulajdonságok

Típus:SwitchParameter
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

-Scope

Az új változó hatókörét adja meg. A paraméter elfogadható értékei a következők:

  • Global – A globális hatókörben létrehozott változók mindenhol elérhetők egy PowerShell-folyamat során.
  • Local – A helyi hatókör az aktuális hatókörre hivatkozik, ez a környezettől függően bármilyen hatókör lehet. Local az alapértelmezett hatókör, ha a hatókörparaméter nincs megadva.
  • Script – A szkript hatókörében létrehozott változók csak abban a szkriptfájlban vagy modulban érhetők el, amelyben létrehozták őket.
  • 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, 1 a szülő, 2 a szülő hatókör szülője stb.). Negatív számok nem használhatók.

Megjegyzés:

A paraméter a Privateértékét is elfogadja. Private valójában nem hatókör, hanem egy változó opcionális beállítása. A Private érték ezzel a parancsmaggal való használata azonban nem változtatja meg a változó láthatóságát. További információ található a about_Scopesrészben.

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

-Value

A változó kezdeti é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. A paraméter elfogadható értékei a következők:

  • Public – A változó látható. A Public az alapértelmezett.
  • Private – 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 Variable: 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:None
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

Bármilyen objektumot becsúszthat New-Variable.

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 változót jelöli.

Jegyzetek

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

  • Minden platform:
    • nv