about_CommonParameters

Kort beskrivning

Beskriver de parametrar som kan användas med valfri cmdlet.

Lång beskrivning

De vanliga parametrarna är en uppsättning cmdlet-parametrar som du kan använda med valfri cmdlet. De implementeras av PowerShell, inte av cmdlet-utvecklaren, och de är automatiskt tillgängliga för alla cmdlet:ar.

Du kan använda vanliga parametrar med valfri cmdlet, men de kanske inte påverkar alla cmdlets. Om en cmdlet till exempel inte genererar utförliga utdata har användning av Verbose den gemensamma parametern ingen effekt.

De vanliga parametrarna är också tillgängliga för avancerade funktioner som använder attributet CmdletBinding eller parameterattributet.

Flera vanliga parametrar åsidosätter systemstandarder eller inställningar som du anger med hjälp av PowerShell-inställningsvariablerna. Till skillnad från inställningsvariablerna påverkar de vanliga parametrarna bara de kommandon som de används i.

Mer information finns i about_Preference_Variables.

I följande lista visas vanliga parametrar. Deras alias visas inom parentes.

  • Debug (db)
  • ErrorAction (ea)
  • ErrorVariable (ev)
  • InformationAction (infa)
  • InformationVariable (iv)
  • OutVariable (ov)
  • OutBuffer (ob)
  • PipelineVariable (pv)
  • Verbose (vb)
  • WarningAction (wa)
  • WarningVariable (wv)

Åtgärdsparametrarna är ActionPreference-typvärden. ActionPreference är en uppräkning med följande värden:

Name Värde
Break 6
Suspend 5
Ignore 4
Inquire 3
Continue 2
Stop 1
SilentlyContinue 0

Du kan använda namnet eller värdet med parametern .

Förutom de vanliga parametrarna erbjuder många cmdlets riskreduceringsparametrar. Cmdlets som innebär risk för systemet eller användardata erbjuder vanligtvis dessa parametrar.

Parametrarna för riskreducering är:

  • WhatIf (wi)
  • Confirm (cf)

Vanliga parameterbeskrivningar

-Debug

Visar information på programmernivå om den åtgärd som utförs av kommandot . Den här parametern fungerar bara när kommandot genererar ett felsökningsmeddelande. Den här parametern fungerar till exempel när ett kommando innehåller Write-Debug cmdleten .

Type: SwitchParameter
Aliases: db

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

Som standard visas inte felsökningsmeddelanden eftersom värdet för $DebugPreference variabeln är SilentlyContinue.

I interaktivt läge Debug åsidosätter parametern värdet för variabeln för det $DebugPreference aktuella kommandot och anger värdet för till $DebugPreference Fråga.

I icke-interaktivt läge åsidosätter parametern värdet för variabeln för det aktuella kommandot Debug och anger värdet för till $DebugPreference $DebugPreference Fortsätt.

-Debug:$true har samma effekt som -Debug . Använd -Debug:$false för att förhindra visning av felsökningsmeddelanden när inte är $DebugPreference TystFortsättning, vilket är standardinställningen.

-ErrorAction

Anger hur cmdleten svarar på ett icke-avslutande fel från kommandot. Den här parametern fungerar bara när kommandot genererar ett icke-avslutande fel, till exempel från Write-Error cmdleten .

Type: ActionPreference
Aliases: ea
Accepted values: Break, Suspend, Ignore, Inquire, Continue, Stop, SilentlyContinue

Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False

Parametern ErrorAction åsidosätter värdet för $ErrorActionPreference variabeln för det aktuella kommandot. Eftersom standardvärdet för $ErrorActionPreference variabeln är Fortsätt visas felmeddelanden och körningen fortsätter om du inte använder parametern ErrorAction.

Parametern ErrorAction har ingen effekt på avslutande fel (till exempel saknade data, parametrar som inte är giltiga eller otillräcklig behörighet) som förhindrar att ett kommando slutförs korrekt.

-ErrorAction:Break Anger felsökningsprogrammet när ett fel inträffar eller när ett undantag utlöses.

-ErrorAction:Continue visar felmeddelandet och fortsätter att köra kommandot. Continue används som standard.

-ErrorAction:Ignore undertrycker felmeddelandet och fortsätter att köra kommandot. Till skillnad från SilentlyContinue lägger Ignore inte till felmeddelandet i den $Error automatiska variabeln. Värdet Ignorera introduceras i PowerShell 3.0.

-ErrorAction:Inquire visar felmeddelandet och uppmanar dig att bekräfta innan du fortsätter körningen. Det här värdet används sällan.

-ErrorAction:SilentlyContinue undertrycker felmeddelandet och fortsätter att köra kommandot.

-ErrorAction:Stop visar felmeddelandet och slutar köra kommandot.

-ErrorAction:Suspend är endast tillgängligt för arbetsflöden som inte stöds i PowerShell 6 och därefter.

Anteckning

Parametern ErrorAction åsidosätter, men ersätter inte värdet för inställningsvariabeln när parametern används i ett kommando för att köra $ErrorAction ett skript eller en funktion.

-ErrorVariable

ErrorVariable lagrar felmeddelanden om kommandot i den angivna variabeln och i den $Error automatiska variabeln. Mer information finns i about_Automatic_Variables

Type: String
Aliases: ev

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

Som standard skriver nya felmeddelanden över felmeddelanden som redan lagras i variabeln . Om du vill lägga till felmeddelandet i variabelinnehållet skriver du ett plustecken ( + ) före variabelnamnet.

Följande kommando skapar till exempel $a variabeln och lagrar sedan eventuella fel i den:

Get-Process -Id 6 -ErrorVariable a

Följande kommando lägger till eventuella felmeddelanden i $a variabeln:

Get-Process -Id 2 -ErrorVariable +a

Följande kommando visar innehållet i $a :

$a

Du kan använda den här parametern för att skapa en variabel som endast innehåller felmeddelanden från specifika kommandon och som inte påverkar den $Error automatiska variabelns beteende. Den $Error automatiska variabeln innehåller felmeddelanden från alla kommandon i sessionen. Du kan använda matris notation, till exempel $a[0] eller för att referera till specifika fel som $error[1,2] lagras i variablerna.

Anteckning

Den anpassade felvariabeln innehåller alla fel som genereras av kommandot, inklusive fel från anrop till kapslade funktioner eller skript.

-InformationAction

Introducerades i PowerShell 5.0. I det kommando eller skript som det används i åsidosätter den gemensamma InformationAction-parametern värdet för inställningsvariabeln, som som standard är inställt på $InformationPreference SilentlyContinue. När du använder Write-Information i ett skript med InformationAction Write-Information visas värden beroende på värdet för parametern InformationAction. Mer information om $InformationPreference finns i about_Preference_Variables.

Type: ActionPreference
Aliases: ia
Accepted values: Break, Suspend, Ignore, Inquire, Continue, Stop, SilentlyContinue

Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False

-InformationAction:Break Anger felsökningsprogrammet vid en förekomst av Write-Information kommandot .

-InformationAction:Stop stoppar ett kommando eller skript vid en förekomst av Write-Information kommandot.

-InformationAction:Ignore undertrycker informationsmeddelandet och fortsätter att köra kommandot. Till skillnad från SilentlyContinue glömmer Ignore helt informationsmeddelandet. Det lägger inte till informationsmeddelandet i informationsströmmen.

-InformationAction:Inquire visar det informationsmeddelande som du anger i Write-Information ett kommando och frågar sedan om du vill fortsätta.

-InformationAction:Continue visar informationsmeddelandet och fortsätter att köras.

-InformationAction:Suspend stöds inte på PowerShell Core eftersom det endast är tillgängligt för arbetsflöden.

-InformationAction:SilentlyContinue ingen effekt eftersom informationsmeddelandet inte visas (standard) och skriptet fortsätter utan avbrott.

Anteckning

Parametern InformationAction åsidosätter, men ersätter inte värdet för inställningsvariabeln när parametern används i ett kommando för att $InformationAction köra ett skript eller en funktion.

-InformationVariable

Introducerades i PowerShell 5.0. I det kommando eller skript som den används i lagrar den gemensamma InformationVariable-parametern i en variabel en sträng som du anger genom att lägga till Write-Information kommandot . Write-Information-värden visas beroende på värdet för den gemensamma InformationAction-parametern; Om du inte lägger till den gemensamma InformationAction-parametern visas Write-Information strängar beroende på värdet för $InformationPreference inställningsvariabeln. Mer information om $InformationPreference finns i about_Preference_Variables.

Anteckning

Informationsvariabeln innehåller alla informationsmeddelanden som genereras av kommandot, inklusive informationsmeddelanden från anrop till kapslade funktioner eller skript.

Type: String
Aliases: iv

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

-OutBuffer

Anger antalet objekt som ska ackumuleras i en buffert innan några objekt skickas via pipelinen. Om du utelämnar den här parametern skickas objekten när de genereras.

Type: Int32
Aliases: ob

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

Den här resurshanteringsparametern är utformad för avancerade användare. När du använder den här parametern skickar PowerShell data till nästa cmdlet i batchar av OutBuffer + 1 .

I följande exempel visas mellan för att ForEach-Object bearbeta block som använder Write-Host cmdleten . Visningen växlar i batchar om 2 eller OutBuffer + 1 .

1..4 | ForEach-Object {
        Write-Host "$($_): First"; $_
      } -OutBuffer 1 | ForEach-Object {
                        Write-Host "$($_): Second" }
1: First
2: First
1: Second
2: Second
3: First
4: First
3: Second
4: Second

-OutVariable

Lagrar utdataobjekt från kommandot i den angivna variabeln förutom att skicka utdata längs pipelinen.

Type: String
Aliases: ov

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

Om du vill lägga till utdata i variabeln skriver du ett plustecken ( ) före variabelnamnet i stället för att ersätta utdata som kanske + redan finns lagrade där.

Följande kommando skapar till exempel $out variabeln och lagrar processobjektet i den:

Get-Process PowerShell -OutVariable out

Följande kommando lägger till processobjektet i $out variabeln :

Get-Process iexplore -OutVariable +out

Följande kommando visar innehållet i $out variabeln :

$out

Anteckning

Variabeln som skapas av parametern OutVariable är [System.Collections.ArrayList] en .

-PipelineVariable

PipelineVariable lagrar värdet för det aktuella pipelineelementet som en variabel för ett namngivet kommando när det flödar genom pipelinen.

Anteckning

Avancerade funktioner kan ha upp till tre skriptblock: begin process , och end . När du använder parametern PipelineVariable med avancerade funktioner tilldelas endast värden från det första definierade skriptblocket till variabeln när funktionen körs. Mer information finns i Avancerade funktioner. PowerShell 7.2 korrigerar det här beteendet.

Type: String
Aliases: pv

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

Giltiga värden är strängar, samma som för alla variabelnamn.

Följande är ett exempel på hur PipelineVariable fungerar. I det här exemplet läggs parametern PipelineVariable till i ett Foreach-Object kommando för att lagra resultatet av kommandot i variabler. Ett intervall med tal, 1 till 10, piped till det första kommandot, där resultatet lagras i en Foreach-Object variabel med namnet Left.

Resultatet av det första kommandot Foreach-Object skickas till ett andra kommando som Foreach-Object filtrerar objekten som returneras av det första Foreach-Object kommandot. Resultatet av det andra kommandot lagras i en variabel med namnet Right.

I det tredje kommandot bearbetas resultatet av de två första piped-kommandona, som representeras av variablerna Vänster och Höger, med hjälp av en Foreach-Object Foreach-Object multiplikationsoperator. Kommandot instruerar objekt som lagras i variablerna Vänster och Höger att multipliceras och anger att resultatet ska visas som "left range member * right range member = product".

1..10 | Foreach-Object -PipelineVariable Left -Process { $_ } |
  Foreach-Object -PV Right -Process { 1..10 } |
  Foreach-Object -Process { "$Left * $Right = " + ($Left*$Right) }
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5
...

-Verbose

Visar detaljerad information om åtgärden som utförs av kommandot. Den här informationen liknar informationen i en spårning eller i en transaktionslogg. Den här parametern fungerar bara när kommandot genererar ett utförligt meddelande. Den här parametern fungerar till exempel när ett kommando innehåller Write-Verbose cmdleten .

Type: SwitchParameter
Aliases: vb

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

Parametern Verbose åsidosätter värdet för $VerbosePreference variabeln för det aktuella kommandot. Eftersom standardvärdet för $VerbosePreference variabeln är SilentlyContinue visas inte utförliga meddelanden som standard.

-Verbose:$true har samma effekt som -Verbose

-Verbose:$false undertrycker visningen av utförliga meddelanden. Använd den här parametern när $VerbosePreference värdet för inte är SilentlyContinue (standardvärdet).

-WarningAction

Anger hur cmdleten svarar på en varning från kommandot. Fortsätt är standardvärdet. Den här parametern fungerar bara när kommandot genererar ett varningsmeddelande. Den här parametern fungerar till exempel när ett kommando innehåller Write-Warning cmdleten .

Type: ActionPreference
Aliases: wa
Accepted values: Break, Suspend, Ignore, Inquire, Continue, Stop, SilentlyContinue

Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False

Parametern WarningAction åsidosätter värdet för $WarningPreference variabeln för det aktuella kommandot. Eftersom standardvärdet för variabeln är Fortsätt visas varningar och $WarningPreference körningen fortsätter om du inte använder parametern WarningAction.

-WarningAction:Break går in i felsökningsprogrammet när en varning inträffar.

-WarningAction:Continue visar varningsmeddelandena och fortsätter att köra kommandot. Continue används som standard.

-WarningAction:Inquire visar varningsmeddelandet och uppmanar dig att bekräfta innan du fortsätter körningen. Det här värdet används sällan.

-WarningAction:SilentlyContinue undertrycker varningsmeddelandet och fortsätter att köra kommandot.

-WarningAction:Stop visar varningsmeddelandet och slutar köra kommandot.

Anteckning

Parametern WarningAction åsidosätter, men ersätter inte värdet för inställningsvariabeln när parametern används i ett kommando för $WarningAction att köra ett skript eller en funktion.

-WarningVariable

Lagrar varningar om kommandot i den angivna variabeln.

Type: String
Aliases: wv

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

Alla genererade varningar sparas i variabeln även om varningarna inte visas för användaren.

Om du vill lägga till varningarna i variabelinnehållet skriver du ett plustecken ( ) före variabelnamnet i stället för att ersätta eventuella varningar som redan finns + lagrade där.

Följande kommando skapar till exempel variabeln $a och lagrar sedan eventuella varningar i den:

Get-Process -Id 6 -WarningVariable a

Följande kommando lägger till eventuella varningar i $a variabeln :

Get-Process -Id 2 -WarningVariable +a

Följande kommando visar innehållet i $a :

$a

Du kan använda den här parametern för att skapa en variabel som endast innehåller varningar från specifika kommandon. Du kan använda matris notation, till exempel $a[0] eller för att referera till specifika varningar som $warning[1,2] lagras i variabeln.

Anteckning

Varningsvariabeln innehåller alla varningar som genereras av kommandot, inklusive varningar från anrop till kapslade funktioner eller skript.

Beskrivningar av parametrar för riskhantering

-WhatIf

Visar ett meddelande som beskriver effekten av kommandot i stället för att köra kommandot.

Type: SwitchParameter
Aliases: wi

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

Parametern WhatIf åsidosätter värdet för $WhatIfPreference variabeln för det aktuella kommandot. Eftersom standardvärdet för $WhatIfPreference variabeln är 0 (inaktiverat) görs WhatIf-beteendet inte utan parametern WhatIf. Mer information finns i about_Preference_Variables

-WhatIf:$true har samma effekt som -WhatIf .

-WhatIf:$false undertrycker det automatiska WhatIf-beteendet som resulterar när värdet för $WhatIfPreference variabeln är 1.

Följande kommando använder till exempel -WhatIf parametern i ett Remove-Item kommando:

Remove-Item Date.csv -WhatIf

I stället för att ta bort objektet visar PowerShell en lista över de åtgärder som skulle göras och vilka objekt som skulle påverkas. Det här kommandot genererar följande utdata:

What if: Performing operation "Remove File" on
Target "C:\ps-test\date.csv".

-Confirm

Uppmanar dig att bekräfta innan du kör kommandot.

Type: SwitchParameter
Aliases: cf

Required: False
Position: Named
Default value: Depends on preference variable
Accept pipeline input: False
Accept wildcard characters: False

Parametern Confirm åsidosätter värdet för $ConfirmPreference variabeln för det aktuella kommandot. Standardvärdet är True. Mer information finns i about_Preference_Variables

-Confirm:$true har samma effekt som -Confirm .

-Confirm:$false undertrycker automatisk bekräftelse, vilket inträffar när värdet för är mindre än eller $ConfirmPreference lika med den uppskattade risken för cmdleten.

Följande kommando använder till exempel Confirm parametern med ett Remove-Item kommando. Innan du tar bort objektet visar PowerShell en lista över de åtgärder som det skulle göra och vilka objekt som skulle påverkas och ber om godkännande.

PS C:\ps-test> Remove-Item tmp*.txt -Confirm

Confirm
Are you sure you want to perform this action?
Performing operation "Remove File" on Target " C:\ps-test\tmp1.txt
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend
[?] Help (default is "Y"):

ConfirmSvarsalternativen är följande:

Svarsåtgärder Resultat
Yes (Y) Utför åtgärden.
Yes to All (A) Utföra alla åtgärder och ignorera Confirm efterföljande frågor
för det här kommandot.
No (N): Utför inte åtgärden.
No to All (L): Utför inga åtgärder och ignorera efterföljande Confirm
frågor för det här kommandot.
Suspend (S): Pausa kommandot och skapa en tillfällig session.
Help (?) Visa hjälp för dessa alternativ.

Alternativet Pausa placerar kommandot i vänteläge och skapar en tillfällig kapslad session där du kan arbeta tills du är redo att välja ett Confirm alternativ. Kommandotolken för den kapslade sessionen har två extra >> för att ange att det är en underordnad åtgärd av det ursprungliga överordnade kommandot. Du kan köra kommandon och skript i den kapslade sessionen. Om du vill avsluta den kapslade sessionen och återgå Confirm till alternativen för det ursprungliga kommandot skriver du "exit".

I följande exempel används alternativet Pausa (S) för att tillfälligt stoppa ett kommando medan användaren söker efter en kommandoparameter i hjälpen. När du har fått den information som behövs skriver användaren "exit" för att avsluta den kapslade prompten och väljer sedan svaret Ja (y) på Confirm frågan.

PS C:\ps-test> New-Item -ItemType File -Name Test.txt -Confirm

Confirm
Are you sure you want to perform this action?

Performing operation "Create File" on Target "Destination:
C:\ps-test\test.txt".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default
is "Y"): s

PS C:\ps-test> Get-Help New-Item -Parameter ItemType

-ItemType <string>
Specifies the provider-specified type of the new item.

Required?                    false
Position?                    named
Default value
Accept pipeline input?       true (ByPropertyName)
Accept wildcard characters?  false

PS C:\ps-test> exit

Confirm
Are you sure you want to perform this action?
Performing operation "Create File" on Target "Destination: C:\ps-test\test
.txt".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (defau
lt is "Y"): y

Directory: C:\ps-test

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-a---         8/27/2010   2:41 PM          0 test.txt

Nyckelord

about_Common_Parameters

Se även

about_Preference_Variables

Skriv-Debug

Skrivvarning

Skrivfel

Skriv-Verbose