我目前正在Azure管道中运行一个python脚本。
python脚本运行subprocess.run( cmd,capture_output=True),cmd是格式为
$(Agent.ToolsDirectory)/azcopy/azcopy拷贝源目标{token}
目前我已经安装了azcopy
- task: Bash@3
displayName: Install azcopy
inputs:
targetType: 'inline'
script: |
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
mkdir $(Agent.ToolsDirectory)/azcopy
wget -O $(Agent.ToolsDirectory)/azcopy/azcopy_v10.tar.gz https://aka.ms/downloadazcopy-v10-linux
tar -xf $(Agent.ToolsDirectory)/azcopy/azcopy_v10.tar.gz -C $(Agent.ToolsDirectory)/azcopy --strip-components=1然后我有了另一个运行python文件的bash脚本任务,但是我得到了Errno2没有这样的文件或目录的错误消息:'$(Agent.ToolsDirectory)/azcopy/azcopy‘
当我在内联脚本中运行$(Agent.ToolsDirectory)/azcopy/azcopy时,可以识别它,但是当我通过python脚本运行命令时,它不能识别。
发布于 2021-06-01 10:41:04
根据我的经验,可能的原因是python脚本在使用$(Agent.ToolsDirectory)/azcopy/azcopy时无法知道真实路径。您可以尝试给出不带任何变量的绝对路径,或者在python脚本中设置变量。当然,您需要确保所有任务都在同一个代理中运行。
https://stackoverflow.com/questions/67628048
复制相似问题