我使用xcopy
命令,因此我可以将文件拖放到批处理文件中:
xcopy /s /i "%~1" "D:\folder1"
当我将folder2
放在批处理文件上时,我得到了这个:
d:\ folder1中\文件
但我希望得到这个:
d:\ folder1中\文件夹2 \文件
所以我必须将folder2
复制到一个单独的文件夹中才能创建目录:
C:\ folder3 \ folder2
这会在folder2
中创建folder1
目录。消除将folder2
移动到单独文件夹中的转换是什么?
谢谢!
答案 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