New-Variable

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

Syntax

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. Az értékeket hozzárendelheti a változóhoz létrehozáskor, vagy hozzárendelheti vagy módosíthatja az értéket a létrehozása után.

A paraméterekkel New-Variable megadhatja a változó tulajdonságait, megadhatja 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, de a New-Variable parancsmag használatával is használhatja a paramétereit).

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. A Name paramétert nem kell beírnia.

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 értéket.

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 ReadOnlyNew-Variable változót a felülírástól.

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

A második parancs megpróbál létrehozni egy második változót 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éterrel bírálja felül a változó írásvédett védelmét. Ebben az esetben az azonos nevű új változó létrehozására vonatkozó parancs sikeres.

4. példa: Több beállítás hozzárendelése 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 azokat AllScope és Constant a beállításokat, így a változó elérhető lesz az aktuális hatókörben, valamint az újonnan létrehozott és nem módosítható vagy törölhető hatókörökben.

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 egy Számláló nevű privát változóval rendelkezik. A parancs a Visibility paramétert privát értékkel használja 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 tudja megtekinteni vagy módosítani a Counter változó értékét, de a Counter változó a modul parancsaival olvasható és módosítható.

6. példa: Szóközzel rendelkező változó létrehozása

Ez a példa bemutatja, hogy a szóközökkel rendelkező változók létrehozhatók. 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

Jóváhagyást kér a parancsmag futtatása előtt.

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

-Description

Megadja a változó leírását.

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

-Force

Azt jelzi, hogy a parancsmag egy olyan változót hoz létre, amelynek a 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ót az Option paraméterben talál.

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

-Name

Megadja az új változó nevét.

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

-Option

A változó Options tulajdonságának értékét adja meg. A paraméter elfogadható értékei a következők:

  • None – Nem ad meg beállításokat. A None az alapértelmezett formátum.
  • ReadOnly - Törölhető. Nem módosítható, kivéve a Force paraméter használatával.
  • Private – A változó csak az aktuális hatókörben érhető el.
  • AllScope – A változót a rendszer minden újonnan létrehozott hatókörbe átmásolja.
  • Constant – Nem törölhető és nem módosítható. Constant A csak akkor érvényes, ha változót hoz létre. A meglévő változók beállításai nem módosíthatók.Constant

Ezek az értékek jelző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 az Option paraméternek értékek tömbjeké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 következőt Get-Variable | Format-Table -Property name, options -AutoSize: .

Type:ScopedItemOptions
Accepted values:None, ReadOnly, Constant, Private, AllScope, Unspecified
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

Egy objektumot ad vissza, amely azt az elemet jelöli, amellyel dolgozik. Alapértelmezés szerint ez a parancsmag nem ad kimenetet.

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

-Scope

Az új változó hatókörét határozza 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 a PowerShell-folyamatokban.
  • 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 A 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 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éket is elfogadja. Private A valójában nem hatókör, hanem egy változó opcionális beállítása. Az érték ezzel a Private parancsmaggal való használata azonban nem változtatja meg a változó láthatóságát. További információ: about_Scopes.

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

-Value

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

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

-Visibility

Meghatározza, hogy a változó látható-e azon a munkameneten kívül, amelyben létrehozta. Ez a paraméter szkriptekben és parancsokban való használatra lett kialakítva, amelyek más felhasználók számára lesznek továbbítva. A paraméter elfogadható értékei a következők:

  • Public - A változó látható. A Public az alapértelmezett formátum.
  • 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 meghajtó által Get-Variablevisszaadott vagy megjelenített változókban Variable: . 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.

Type:SessionStateEntryVisibility
Accepted values:Public, Private
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.

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

Bevitelek

Object

Az értéket átadhatja a parancsnak New-Variable.

Kimenetek

None, System.Management.Automation.PSVariable

Ez a parancsmag egy PSVariable objektumot ad vissza, amely az új változót jelöli, ha megadja a PassThru paramétert. Ellenkező esetben nem ad vissza kimenetet.