我已经创建了一个批处理脚本,在此脚本中我想使用Build.SourcesDirectory变量。
这是批处理脚本:
ROBOCOPY $(Build.SourcesDirectory)\myfoldername \\servername\destinationfolder\Copy /V
也尝试过这个:
ROBOCOPY "$(Build.SourcesDirectory)\myfoldername" "\\servername\destinationfolder\Copy" /V
但是出现错误,并且没有采取同样的方法
这是我的管道输出
ROBOCOPY:: Robust File Copy for Windows
Source : E:\DevOps\Agent\vsts-agent-win-x64-2.144.2\_work\6\s\$(Build.SourcesDirectory)\myfoldername
Dest : \\servername\destinationfolder\Copy
Files : *.*
Options : *.* /V /DCOPY:DA /COPY:DAT /R:1000000 /W:30
Note:我知道有一个任务“ Windows Machine File Copy task”
我有一个执行许多任务的蝙蝠文件,而任务之一就是这个。
任何人都有一个想法,我们如何实现?
您正在重新发明轮子。对于非Windows计算机,请使用Windows计算机文件复制任务(对于Windows)或通过SSH复制文件任务。
通常无法识别变量时会发生此问题。在UNIX系统(MacOS和Linux)上,环境变量的格式为$NAME
。在Windows上,批处理的格式为%NAME%
,在PowerShell中的格式为$env:NAME
。
使用管道中的变量检查以下批处理脚本示例:
@echo off
echo BUILD_SOURCESDIRECTORY contents:
@dir %BUILD_SOURCESDIRECTORY%
echo Over and out.
https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/utility/batch-script?view=azure-devops