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


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. 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 paraméterekkel beállíthatja New-Variable a változó tulajdonságait, beállíthatja a 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 beírásával, például $Var = 3, de a New-Variable parancsmaggal használhatja a paramétereket.

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 Név 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-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 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ő 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 azokat AllScope és Constant a 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, amelynek egy Számláló nevű privát változója van. A parancs a Láthatóság paramétert használja egy 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 változó zárójelekkel való elválasztásá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
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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ó értéke vagy Constant.ReadOnly További információ: Option paraméter.

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

-Name

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

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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 formátum.
  • 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 változó minden létrehozott új hatókörbe át lesz másolva.
  • Constant – Nem törölhető vagy módosítható. Constant csak változó létrehozásakor érvényes. A meglévő változók beállításait nem módosíthatja a következőre Constant: .

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 az 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 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
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

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

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

Feljegyzés

A paraméter a következő értékét Privateis elfogadja: . Private 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
Required:False
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
Required:False
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é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 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 visszaadott Get-Variablevagy megjelenített Variable: változókban. 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
Required:False
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
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Bevitelek

Object

Bármilyen objektumot becsúszthat a parancsba 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 New-Variabletartalmazza:

  • Minden platform:
    • nv