xcopy创建文件夹(拖放)

时间:2017-02-26 18:40:33

标签: batch-file xcopy

我使用xcopy命令,因此我可以将文件拖放到批处理文件中:

xcopy /s /i "%~1" "D:\folder1"

当我将folder2放在批处理文件上时,我得到了这个:

  

d:\ folder1中\文件

但我希望得到这个:

  

d:\ folder1中\文件夹2 \文件

所以我必须将folder2复制到一个单独的文件夹中才能创建目录:

  

C:\ folder3 \ folder2

这会在folder2中创建folder1目录。消除将folder2移动到单独文件夹中的转换是什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

为了能够一次拖放多个文件/文件夹,您可以使用此批次。它测试当前项是否是文件夹并在必要时创建目标,shift是当前参数并循环。

:: DropTarget.cmd
@Echo off
Set "Dest=D:\Test\Bed\"
:loop
if "%~1" equ "" Exit /b 0
echo d|findstr "%~a1" >Nul 2>&1 &&  if not exist "%Dest%%~nx1" Md "%Dest%%~nx1"
xcopy /S /I "%~1" "%Dest%%~nx1"
Shift
Goto :loop