CmdLine@2: tarea línea de comandos v2
Use esta tarea para ejecutar un script de línea de comandos mediante Bash en Linux, macOS y cmd.exe en Windows.
Sintaxis
# 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.
Entradas
script de script
-
string
. Obligatorio. Valor predeterminado: echo Write your commands here\n\necho Hello world
.
El contenido del script que quiere ejecutar.
de directorio de trabajo de
string
.
Especifica el directorio de trabajo para ejecutar comandos. Si lo deja vacío, el directorio de trabajo se $(Build.SourcesDirectory).
failOnStderr
-
error en la de error estándar
boolean
. Valor predeterminado: false
.
Si el valor se establece en true, se produce un error en la tarea si se escribe algún error en la secuencia de errores estándar.
Opciones de control de tareas
Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.
Variables de salida
Ninguno.
Observaciones
La línea de comandos tiene un acceso directo en YAML: steps.script.
- script: # inline script
workingDirectory: #
displayName: #
failOnStderr: #
env: { string: string } # mapping of environment variables to add
Ejecución del lote y . Archivos CMD
Azure Pipelines coloca el contenido del script insertado en un archivo por lotes temporal (.cmd) para poder ejecutarlo.
Cuando quiera ejecutar un archivo por lotes desde otro archivo por lotes en CMD de Windows, debe usar el comando call
; de lo contrario, se termina el primer archivo por lotes.
Esto dará lugar a que Azure Pipelines ejecute el script previsto hasta el primer archivo por lotes y, después, ejecute el archivo por lotes y, a continuación, finalice el paso.
Las líneas adicionales del primer script no se ejecutan.
Siempre debe anteponer call
antes de ejecutar un archivo por lotes en un paso de script de Azure Pipelines.
Importante
Es posible que no se dé cuenta de que está ejecutando un archivo por lotes.
Por ejemplo, npm
en Windows, junto con las herramientas que instale con npm install -g
, son realmente archivos por lotes.
Use siempre call npm <command>
para ejecutar comandos NPM en una tarea de línea de comandos en Windows.
Ejemplos
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
Requisitos
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
demandas | Ninguno |
funcionalidades de |
Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
restricciones de comandos | Cualquiera |
variables settable | Cualquiera |
Versión del agente | Todas las versiones de agente admitidas. |
Categoría de tarea | Utilidad |
Consulte también
- Aprenda a usar de registros detallados de para solución de problemas de.