如何 xcopy 深度为 1 的所有以字符串开头的文件夹?
How to xcopy all folders starting with string in depth 1?
我在 Jenkins 构建中 运行ning xcopy。
我的目录结构如下:
Ensure\
a
Web_ERP
b
c
Web_ERP
Web_ERP
Web_ERP_Claims
Web_ERP_Finance
我正在尝试将 Ensure (depth=1) 下以 "Web_ER*" 开头的所有文件夹复制到我当前的工作区。
node () {
stage ('Setup') {
deleteDir()
bat '''
IF NOT EXIST c:\deploy mkdir c:\deploy
cd ..\Ensure
xcopy Web_ER* "%WORKSPACE%" /e
'''
}
}
实际上,所有以 Web_ER* 开头的文件夹都与位于文件夹 a 和 c 下的 Web_ER* 文件夹一起被复制。
我只想 Web_ER* 位于 Ensure 下的文件夹与其内容一起被复制。
我用 xcopy 尝试了以下开关:/i /e /s /m 但我每次都得到相同的结果。
编辑#1:
@magoo 当我 运行 你给它的命令复制每个 Web_ER* 文件夹下的所有文件而没有文件夹本身时,我想复制所有文件夹 strating "Web_ER*" 及其所有子目录到我的目标文件夹。
按照您的示例,我也尝试过:
for /f "delims=" %%a in ('dir /b /ad web_er*') do xcopy ".\%%a" "%WORKSPACE%" /e /y
但是没有用。
例如,在 linux 中,它很简单:
cp -R folder/pattern* destination/dir
我正在寻找 windows 中的等效命令。
我做错了什么?
for /f "delims=" %%a in ('dir /b /ad web_er*') do xcopy ".\%%a\*" "%WORKSPACE%" /e
应该可以做到这一点。处理当前目录中匹配web_er*
的目录名的/b
基本(仅名称)形式/ad
的目录列表,并将找到的每个名称依次应用到%%a
;然后 xcopy
所有文件。
我最终使用了以下 powershell 命令:
Get-childitem | where {$_.name -like "Web_ER*"} | copy-item -recurse -destination ..\Ensure-Publish -force
我在 Jenkins 构建中 运行ning xcopy。
我的目录结构如下:
Ensure\
a
Web_ERP
b
c
Web_ERP
Web_ERP
Web_ERP_Claims
Web_ERP_Finance
我正在尝试将 Ensure (depth=1) 下以 "Web_ER*" 开头的所有文件夹复制到我当前的工作区。
node () {
stage ('Setup') {
deleteDir()
bat '''
IF NOT EXIST c:\deploy mkdir c:\deploy
cd ..\Ensure
xcopy Web_ER* "%WORKSPACE%" /e
'''
}
}
实际上,所有以 Web_ER* 开头的文件夹都与位于文件夹 a 和 c 下的 Web_ER* 文件夹一起被复制。
我只想 Web_ER* 位于 Ensure 下的文件夹与其内容一起被复制。
我用 xcopy 尝试了以下开关:/i /e /s /m 但我每次都得到相同的结果。
编辑#1:
@magoo 当我 运行 你给它的命令复制每个 Web_ER* 文件夹下的所有文件而没有文件夹本身时,我想复制所有文件夹 strating "Web_ER*" 及其所有子目录到我的目标文件夹。 按照您的示例,我也尝试过:
for /f "delims=" %%a in ('dir /b /ad web_er*') do xcopy ".\%%a" "%WORKSPACE%" /e /y
但是没有用。
例如,在 linux 中,它很简单:
cp -R folder/pattern* destination/dir
我正在寻找 windows 中的等效命令。
我做错了什么?
for /f "delims=" %%a in ('dir /b /ad web_er*') do xcopy ".\%%a\*" "%WORKSPACE%" /e
应该可以做到这一点。处理当前目录中匹配web_er*
的目录名的/b
基本(仅名称)形式/ad
的目录列表,并将找到的每个名称依次应用到%%a
;然后 xcopy
所有文件。
我最终使用了以下 powershell 命令:
Get-childitem | where {$_.name -like "Web_ER*"} | copy-item -recurse -destination ..\Ensure-Publish -force