Compartir a través de


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