Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Azure管道中是否有提取bash脚本输出的方法_Bash_Azure_Azure Pipelines - Fatal编程技术网

在Azure管道中是否有提取bash脚本输出的方法

在Azure管道中是否有提取bash脚本输出的方法,bash,azure,azure-pipelines,Bash,Azure,Azure Pipelines,我有很多bash脚本,其中包含各种变量,这些变量通过管道传输到各种脚本中 我一直在想,我是否可以提取由Azure管道激活的bash脚本的输出,作为管道运行时其余部分的管道变量 例如: foo=$date+%Y%m%d\u%H%m%S输出:20200219\u 143400,我想获取输出以供以后在管道上使用。取决于您如何设计您可以使用的管道: 在同一工作中: 不同的工作: 因此,您需要使用vso[task.setvariable]将需要保存到输出的所有变量打印到管道控制台,然后将它们作为脚本参数值

我有很多bash脚本,其中包含各种变量,这些变量通过管道传输到各种脚本中

我一直在想,我是否可以提取由Azure管道激活的bash脚本的输出,作为管道运行时其余部分的管道变量

例如:
foo=$date+%Y%m%d\u%H%m%S输出:20200219\u 143400,我想获取输出以供以后在管道上使用。

取决于您如何设计您可以使用的管道:

在同一工作中: 不同的工作:
因此,您需要使用vso[task.setvariable]将需要保存到输出的所有变量打印到管道控制台,然后将它们作为脚本参数值传递。

变量$foo现在具有date命令的值/输出。你想要什么?你试过vso[task.setvariable]吗?@Ivaniginatiev我已经试过了,但没有完全理解,因为我的变量是在bash任务中声明的,我需要它以备以后在管道中使用。@Jetchisel我想$foo variable output并在另一个bash任务中使用它,作为输出变量,但我找不到how@DorShamay在您的示例中,您需要在outputstep:echo vso[task.setvariable variable=foo;isooutput=true]$foo中启动Job1中的某个位置,并且要在另一个任务中使用它,您需要将它传递给Job2:./myscript.sh$[dependencies.Job1.outputstep.foo]脚本的参数谢谢你的回答,我会检查这个方法并更新
- job: Job1
  steps:
  - bash: |
      $WORKDIR/foo.sh
      echo "##vso[task.setvariable variable=foo]$foo"
    name: FooStep
  - bash: |
      $WORKDIR/nextscript.sh $(FooStep.foo)
    name: NextScript

# ...
- job: Job1
  steps:
  - bash: |
      $WORKDIR/foo.sh
      echo "##vso[task.setvariable variable=foo;isOutput=true]$foo"
    name: FooStep
- job: Job2
  dependsOn: Job1
  steps:
  - bash: |
      $WORKDIR/job2script.sh $[ dependencies.Job1.outputs['FooStep.foo'] ]
    name: Job2ScriptStep

# ...