Partilhar via


CmdLine@2 - Tarefa de linha de comando v2

Use esta tarefa para executar um script de linha de comando usando Bash no Linux, macOS e cmd.exe no Windows.

Sintaxe

# 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.

Insumos

script - Guião
string. Obrigatório. Valor padrão: echo Write your commands here\n\necho Hello world.

Os conteúdos do script que quer executar.


workingDirectory - Diretório de Trabalho
string.

Especifica o diretório de trabalho para executar comandos. Se você deixá-lo vazio, o diretório de trabalho será $(Build.SourcesDirectory).


failOnStderr - falha no erro padrão
boolean. Valor padrão: false.

Se o valor estiver definido como verdadeiro, a tarefa falhará se forem escritos erros no fluxo de Erros Padrão.


Opções de controlo de tarefas

Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

A linha de comando tem um atalho no YAML: steps.script.

- script: # inline script
  workingDirectory: #
  displayName: #
  failOnStderr: #
  env: { string: string } # mapping of environment variables to add

Executando lote e . Arquivos CMD

Os Pipelines do Azure colocam os conteúdos do script inline num ficheiro de lote temporário (.cmd) para o executar. Quando você deseja executar um arquivo em lotes de outro arquivo em lotes no CMD do Windows, você deve usar o comando call, caso contrário, o primeiro arquivo em lotes será encerrado. Tal fará com que os Pipelines do Azure executem o script pretendido até ao primeiro ficheiro de lote e, em seguida, executem o ficheiro de lote e, por fim, terminem o passo. As linhas adicionais no primeiro script não são executadas. Você sempre deve antecipar call antes de executar um arquivo em lotes em uma etapa de script do Azure Pipelines.

Importante

Você pode não perceber que está executando um arquivo em lotes. Por exemplo, npm no Windows, juntamente com quaisquer ferramentas que você instala usando npm install -g, são, na verdade, arquivos em lote. Sempre use call npm <command> para executar comandos NPM em uma tarefa de linha de comando no Windows.

Exemplos

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

Requerimentos

Requisito Descrição
Tipos de pipeline YAML, Construção clássica, Versão clássica
Funciona em Agente, DeploymentGroup
Exigências Nenhum
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente Todas as versões de agente suportadas.
Categoria de tarefa Utilidade

Ver também