我需要将包含多个文件的文件夹复制到构建管道中的另一个文件夹。
我使用
cp -R -v pathToSourceFolder pathToDestFolder
cp -R -v /Users/runner/runners/2.166.4/work/1/s/en.lproj/ /Users/runner/runners/2.166.4/work/1/s/platforms/ios/AppName/Resources
并且退出代码126出现错误:
usage: cp [-R [-H | -L | -P]] [-fi | -n] [-apvXc] source_file target_file
cp [-R [-H | -L | -P]] [-fi | -n] [-apvXc] source_file ... target_directory
任何人都可以提供帮助,因为我是linux / macOS use / cmd的新手?注意:管道在macOS上运行。
我需要将包含多个文件的文件夹复制到建立管道。
1。我假设/Users/runner/runners/2.166.4/work/1/s
是您的构建的默认工作文件夹。因此,请避免对路径进行硬编码,而可以使用代表该路径的$(System.DefaultWorkingDirectory)
。请参见Azure Devops predefined variables。
2。由于您的原始目的是在Azure Devops管道中复制文件,因此您无需过多关心不同OS系统(Linux,MacOS或Windows)中的相应复制语法。
您可以使用官方的Copy Files task轻松地进行[想要的操作]。该任务需要三个输入:我们要复制的 经典UI格式:Source folder
,Target folder
和Contents
,就是这样。
您可以通过Browse Source Folder
选项选择源文件夹。然后使用**
作为目录,使用$(System.DefaultWorkingDirectory)/platforms/ios/Fixi/Resources
作为目标文件夹。
Yaml格式:
- task: CopyFiles@2
displayName: 'My Copy Task'
inputs:
SourceFolder: en.lproj
TargetFolder: '$(System.DefaultWorkingDirectory)/platforms/ios/Fixi/Resources'
我们已经为您完成了后面的逻辑,以便您可以轻松地在MacOS / Linux / Windows中使用此任务。我的测试日志: