Freigeben über


PowerShell@1 – PowerShell v1-Aufgabe

Führen Sie ein PowerShell-Skript aus.

Syntax

# PowerShell v1
# Run a PowerShell script.
- task: PowerShell@1
  inputs:
    scriptType: 'filePath' # 'inlineScript' | 'filePath'. Required. Type. Default: filePath.
    scriptName: # string. Required when scriptType = filePath. Script Path. 
    #arguments: # string. Arguments. 
    #inlineScript: # string. Required when scriptType = inlineScript. Inline Script. 
  # Advanced
    #workingFolder: # string. Working folder. 
    #failOnStandardError: true # boolean. Fail on Standard Error. Default: true.

Eingänge

scriptType - Typ
string. Erforderlich. Zulässige Werte: inlineScript (Inlineskript), filePath (Dateipfad). Standardwert: filePath.

Gibt den Typ des Skripts für die auszuführende Aufgabe an: ein Inlineskript oder ein Pfad zu einer .ps1 Datei.


scriptName - Skriptpfad
string. Erforderlich, wenn scriptType = filePath.

Gibt den Typ des Skripts für die auszuführende Aufgabe an: ein Inlineskript oder ein Pfad zu einer .ps1 Datei.


arguments - Argumente
string.

Gibt die Argumente an, die an das PowerShell-Skript übergeben werden. Argumente können Ordnungsparameter oder benannte Parameter sein. Beispiel: -Name someName -Path -Value "Some long string value".

arguments wird nicht verwendet, wenn targetType auf inlinefestgelegt ist.


workingFolder - Arbeitsordner
string.

Gibt das Arbeitsverzeichnis an, in dem das Skript ausgeführt wird. Wenn kein Wert angegeben ist, wird das Arbeitsverzeichnis $(Build.SourcesDirectory).


inlineScript - Inlineskript-
string. Erforderlich, wenn scriptType = inlineScript. Standardwert: # You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host "Hello World".

Gibt den Inhalt des Skripts an. Die maximal unterstützte Inlineskriptlänge beträgt 500 Zeichen. Verwenden Sie ein Skript aus einer Datei, wenn Sie ein längeres Skript verwenden möchten.


failOnStandardError - fehler bei Standardfehler-
boolean. Standardwert: true.

Wenn der Wert dieses booleschen Werts trueist, schlägt die Aufgabe fehl, wenn Fehler in die Fehlerpipeline geschrieben werden oder daten in den Standardfehlerdatenstrom geschrieben werden. Andernfalls basiert die Aufgabe auf dem Beendigungscode, um fehler zu ermitteln.


Aufgabensteuerungsoptionen

Alle Aufgaben verfügen zusätzlich zu ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.

Ausgabevariablen

Keiner.

Bemerkungen

PowerShell@1 nur unter Windows-Agents ausgeführt. Verwenden Sie PowerShell@2, um PowerShell für andere Agenttypen auszuführen.

Jede PowerShell-Sitzung dauert nur für die Dauer des Auftrags, in dem sie ausgeführt wird. Aufgaben, die davon abhängen, was bootstrapped wurde, müssen sich im gleichen Auftrag wie der Bootstrap befinden.

Festlegen einer Variablen, damit sie von nachfolgenden Skripts und Aufgaben gelesen werden kann

Weitere Informationen zum Definieren von Buildvariablen in einem Skript finden Sie unter Definieren und Ändern der Buildvariablen in einem Skript.

Weitere Informationen zum Definieren von Releasevariablen in einem Skript finden Sie unter Definieren und Ändern der Releasevariablen in einem Skript.

Übergeben geheimer Pipelineschlüssel im Skript, geheimer Schlüssel ist jedoch nicht in Pipelineprotokollen maskiert

Beachten Sie, dass PowerShell Fehlermeldungen ausschneidet. Wenn Sie also Pipelineschlüssel in einem Skript verwenden, können die geheimen Schlüssel gekürzt und verfügbar gemacht werden. Beispiel: Inlineskript unten:

./script.ps1 --arg1 value1 --arg2 <some_secret_which_will_be_masked_here>

Es kann eine Ausnahme wie: At <path_to_temp_script_file>:4 char:3:

+   ./script.ps1 --arg1 value1 --arg2 <unmasked_part_of_original_secret> ...
+   ~~~~~~~~~~
    + <Additional exception details>

Um dieses Problem zu vermeiden, können Sie diese Ausnahmen auf Skriptebene behandeln oder Fälle vermeiden, in dem Pipelineschlüssel in Quellcodezeilen in Fehlermeldungen angezeigt werden können.

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, Classic Build, Classic Release
Läuft auf Agent, DeploymentGroup
Anforderungen Self-hosted agents must have capabilities that match the following anforderungen to run jobs that use this task: DotNetFramework
Funktionen Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag.
Befehlseinschränkungen Jegliche
Settable-Variablen Jegliche
Agentversion 1.102 oder höher
Vorgangskategorie Nützlichkeit

Siehe auch