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.
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.
Entradas
script
- Guión
string
. Obligatorio. Valor predeterminado: echo Write your commands here\n\necho Hello world
.
El contenido del script que desea ejecutar.
script
- Guión
string
. Obligatorio. Valor predeterminado: echo Write your commands here\n\necho Use the environment variables input below to pass secret variables to this script
.
El contenido del script que desea ejecutar.
workingDirectory
- Directorio de trabajo
string
.
Especifique el directorio de trabajo para ejecutar los comandos. Si lo deja vacío, el directorio de trabajo es $(Build.SourcesDirectory).
failOnStderr
- Error en el error estándar
boolean
. Valor predeterminado: false
.
Si el valor se establece en True, la tarea fracasa si se escriben errores en el flujo de errores estándar.
Opciones de control de tareas
Todas las tareas tienen opciones de control además de las entradas de tareas. Para obtener más información, vea Opciones de control y propiedades de tareas comunes.
Variables de salida
Ninguno.
Comentarios
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 de archivos por lotes y .CMD
Azure Pipelines coloca el contenido del script insertado en un archivo por lotes temporal (.cmd) para poder ejecutarlo.
Si desea ejecutar un archivo por lotes desde otro archivo por lotes en CMD de Windows, debe usar el comando call
; de lo contrario, se terminará 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.
No se ejecutan líneas adicionales en el primer script.
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 mediante npm install -g
, son archivos por lotes.
Use siempre call npm <command>
para ejecutar comandos NPM en una tarea 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 |
Peticiones | None |
Capabilities | Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
Restricciones de comandos | Any |
Variables que se pueden establecer | Any |
Versión del agente | Todas las versiones de agente compatibles. |
Categoría de la tarea: | Utilidad |
Consulte también
- Aprenda a usar registros detallados para solucionar problemas.