Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gehen Sie wie nachfolgend beschrieben vor, um ein Shell-Skript mit bashauszuführen.
Syntax
# Shell script v2
# Run a shell script using Bash.
- task: ShellScript@2
inputs:
scriptPath: # string. Required. Script Path.
#args: # string. Arguments.
# Advanced
#disableAutoCwd: false # boolean. Specify Working Directory. Default: false.
#cwd: # string. Optional. Use when disableAutoCwd = true. Working Directory.
#failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
Eingänge
scriptPath
-
Skriptpfad
string. Erforderlich.
Gibt den relativen Pfad vom Repositorystamm zur Shellskriptdatei an, die Sie ausführen möchten.
args
-
Argumente
string.
Gibt die Argumente an, die Sie an das Skript übergeben möchten.
disableAutoCwd
-
Arbeitsverzeichnis angeben
boolean. Standardwert: false.
Gibt das Arbeitsverzeichnis an, in dem der Task das Skript ausführt. Wenn der Wert leer bleibt, wird die Aufgabe standardmäßig auf den Ordner zurückgesetzt, in dem sich das Skript befindet.
cwd
-
Arbeitsverzeichnis-
string. Wahlfrei. Wird verwendet, wenn disableAutoCwd = true.
Gibt das Arbeitsverzeichnis an, in dem das Skript ausgeführt wird. Wenn der Wert leer gelassen wird, verwendet die Aufgabe den Stamm des Repositorys (Build) oder der Artefakte (Release), d $(System.DefaultWorkingDirectory). h.
failOnStandardError
-
fehler bei Standardfehler-
boolean. Standardwert: false.
Wenn der Wert ist true, schlägt die Aufgabe fehl, wenn Fehler in den StandardError-Stream 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
Wo kann ich mehr über Bash-Skripts erfahren?
- Anfänger/BashScripting für den Einstieg.
- Awesome Bash , um tiefer zu gehen.
Wie setze ich eine Variable so, dass sie von nachfolgenden Skripten 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 von Releasevariablen in einem Skript
Beispiele
Erstellen Sie test.sh im Stammverzeichnis Ihres Repositorys.
Es wird empfohlen, diese Datei in einer Linux-Umgebung (z. B. einem echten Linux-Computer oder einem Windows-Subsystem für Linux) zu erstellen, damit die Zeilenenden korrekt sind.
Vergessen Sie auch nicht, dies chmod +x test.sh zu tun, bevor Sie es begehen.
#!/bin/bash
echo "Hello World"
echo "AGENT_WORKFOLDER is $AGENT_WORKFOLDER"
echo "AGENT_WORKFOLDER contents:"
ls -1 $AGENT_WORKFOLDER
echo "AGENT_BUILDDIRECTORY is $AGENT_BUILDDIRECTORY"
echo "AGENT_BUILDDIRECTORY contents:"
ls -1 $AGENT_BUILDDIRECTORY
echo "SYSTEM_HOSTTYPE is $SYSTEM_HOSTTYPE"
echo "Over and out."
Fügen Sie Ihrer Pipeline die folgende Aufgabe hinzu, um das vorherige Skript auszuführen.
- task: ShellScript@2
inputs:
scriptPath: 'test.sh'
Anforderungen
| Anforderung | BESCHREIBUNG |
|---|---|
| Pipelinetypen | YAML, Classic Build, Classic Release |
| Läuft auf | Agent, DeploymentGroup |
| Anforderungen | Selbstgehostete Agents müssen über Funktionen verfügen, die den folgenden Anforderungen entsprechen, um Aufträge auszuführen, die diese Aufgabe verwenden: sh |
| Funktionen | Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag. |
| Befehlseinschränkungen | Beliebig |
| Settable-Variablen | Beliebig |
| Agentversion | Alle unterstützten Agentversionen. |
| Vorgangskategorie | Nützlichkeit |