CmdLine@2 – Befehlszeile v2-Aufgabe
Verwenden Sie diese Aufgabe, um ein Befehlszeilenskript mit Bash unter Linux, macOS und cmd.exe unter Windows auszuführen.
Syntax
# Command Line v2
# Run a command line script using Bash on Linux and macOS and cmd.exe on Windows.
- task: CmdLine@2
inputs:
script: # string. Required. Script.
# Advanced
#workingDirectory: # string. Working Directory.
#failOnStderr: false # boolean. Fail on Standard Error. Default: false.
Eingänge
script
-
Skript-
string
. Erforderlich. Standardwert: echo Write your commands here\n\necho Hello world
.
Der Inhalt des Skripts, das Sie ausführen möchten.
workingDirectory
-
Arbeitsverzeichnis-
string
.
Gibt das Arbeitsverzeichnis an, in dem Befehle ausgeführt werden sollen. Wenn Sie es leer lassen, ist das Arbeitsverzeichnis $(Build.SourcesDirectory).
failOnStderr
-
fehler bei Standardfehler-
boolean
. Standardwert: false
.
Wenn der Wert auf true festgelegt ist, schlägt der Vorgang fehl, wenn Fehler in den Standardfehlerstream geschrieben werden.
Aufgabensteuerungsoptionen
Alle Aufgaben verfügen zusätzlich zu ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.
Ausgabevariablen
Keiner.
Bemerkungen
Die Befehlszeile verfügt über eine Verknüpfung in YAML: steps.script.
- script: # inline script
workingDirectory: #
displayName: #
failOnStderr: #
env: { string: string } # mapping of environment variables to add
Ausführen von Batch und . CMD-Dateien
Azure Pipelines legt den Inhalt Ihres Inline-Skripts in einer temporären Batchdatei (.cmd) ab, um es auszuführen.
Wenn Sie eine Batchdatei aus einer anderen Batchdatei in Windows CMD ausführen möchten, müssen Sie den Befehl call
verwenden, andernfalls wird die erste Batchdatei beendet.
Dies führt dazu, dass Azure Pipelines Ihr geplantes Skript bis zum ersten Aufruf einer Batchdatei ausführt, dann die aufgerufene Batchdatei ausführt und den Schritt beendet.
Die restlichen Zeilen im ersten Skript werden nicht mehr ausgeführt.
Sie sollten call
immer vor dem Ausführen einer Batchdatei in einem Azure Pipelines-Skriptschritt vorangestellt haben.
Wichtig
Möglicherweise stellen Sie nicht fest, dass Sie eine Batchdatei ausführen.
Beispielsweise sind npm
unter Windows zusammen mit allen Tools, die Sie mit npm install -g
installieren, tatsächlich Batchdateien.
Verwenden Sie immer call npm <command>
, um NPM-Befehle in einer Befehlszeilenaufgabe unter Windows auszuführen.
Beispiele
steps:
- script: date /t
displayName: Get the date
- script: dir
workingDirectory: $(Agent.BuildDirectory)
displayName: List contents of a folder
- script: |
set MYVAR=foo
set
displayName: Set a variable and then display all
env:
aVarFromYaml: someValue
Anforderungen
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, Classic Build, Classic Release |
Läuft auf | Agent, DeploymentGroup |
Anforderungen | Nichts |
Funktionen | Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag. |
Befehlseinschränkungen | Jegliche |
Settable-Variablen | Jegliche |
Agentversion | Alle unterstützten Agentversionen. |
Vorgangskategorie | Nützlichkeit |
Siehe auch
- Erfahren Sie, wie Sie ausführlichen Protokolle für Problembehandlungverwenden.