微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Errno 2] 没有这样的文件或目录:'$(Agent.ToolsDirectory)/azcopy/azcopy'

如何解决Errno 2] 没有这样的文件或目录:'$(Agent.ToolsDirectory)/azcopy/azcopy'

我目前正在 Azure 管道中运行 Python 脚本。

python脚本运行subprocess.run([cmd],capture_output=True),cmd为

格式的azcopy命令

$(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 脚本任务,但我收到了 [Errno 2] No such file or directory: '$(Agent.ToolsDirectory)/azcopy/azcopy'

$(Agent.ToolsDirectory)/azcopy/azcopy 当我在内联脚本中运行它时被识别,但当我通过 python 脚本运行命令时它不会。

解决方法

根据我的经验,可能的原因是使用$(Agent.ToolsDirectory)/azcopy/azcopy时python脚本无法知道真实路径。您可以尝试给出没有任何变量的绝对路径或在 python 脚本中设置变量。当然,您需要确保所有任务都在同一个代理中运行。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。