ShellScript@2 - Shell 脚本 v2 任务

使用此任务使用 运行 shell 脚本 bash

语法

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

输入

scriptPath - 脚本路径
string. 必需。

指定从存储库根目录到要运行的 shell 脚本文件的相对路径。


args - 参数
string.

指定要传递给脚本的参数。


disableAutoCwd - 指定工作目录
boolean. 默认值:false

指定任务在其中运行脚本的工作目录。 如果该值留空,则任务默认为脚本所在的文件夹。


cwd - 工作目录
string. 可选。 在 时 disableAutoCwd = true使用 。

指定运行脚本的工作目录。 如果值留空,则任务将使用存储库的根目录 (生成) 或项目 (发布) ,即 $(System.DefaultWorkingDirectory)


failOnStandardError - 标准错误失败
boolean. 默认值:false

如果值为 true,则当错误写入 StandardError 流时,任务将失败。


任务控件选项

除任务输入外,所有任务都有控制选项。 有关详细信息,请参阅 控制选项和常见任务属性

输出变量

无。

备注

在哪里可以了解 Bash 脚本?

如何实现设置变量,以便后续脚本和任务可以读取它?

若要详细了解如何在脚本中定义生成变量,请参阅 在脚本中定义和修改生成变量

若要详细了解如何在脚本中定义发布变量,请参阅 在脚本中定义和修改发布变量

示例

在存储库的根目录中创建 test.sh 。 建议从 Linux 环境 ((例如真正的 Linux 计算机或 适用于 Linux 的 Windows 子系统) )创建此文件,以便行尾正确。 此外,在 chmod +x test.sh 提交之前不要忘记。

#!/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."

将以下任务添加到管道以运行上一个脚本。

- task: ShellScript@2
  inputs:
    scriptPath: 'test.sh'

要求

要求 说明
管道类型 YAML、经典版本、经典版本
运行平台 Agent、DeploymentGroup
需求 自承载代理必须具有满足以下要求的功能才能运行使用此任务的作业:
功能 此任务不满足作业中后续任务的任何要求。
命令限制 Any
可设置变量 Any
代理版本 所有支持的代理版本。
任务类别 实用工具