我创建了一个txt文件,其中包含我需要移动到新位置的目录列表。但是有大量的目录,尝试复制和粘贴只需要一些目录。
如何使用此txt文件仅将这些目录移动到新文件夹?我还要保持每个目录的子目录。
感谢。
答案 0 :(得分:2)
@ECHO OFF
SETLOCAL
SET "sourcedir=U:\sourcedir"
SET "destdir=U:\destdir"
FOR /f "delims=" %%a IN ('dir /b/ad "%sourcedir%\t w o" ') DO MOVE "%sourcedir%\t w o\%%a" "%destdir%\%%a"
GOTO :EOF
这是我如何做的一个例子。 dir
命令生成"%sourcedir%\t w o"
子目录的目录列表,它只是一个测试目录。 delims=
确保列表中的整个目录名称都应用于%%a
。
如果afile.txt
中的列表类似
u:\somedirectory to move
u:\someotherdirectory to move
u:\moveme
然后
FOR /f "delims=" %%a IN (afile.txt) DO ECHO(MOVE "%%a" "%destdir%\%%~nxa"
应列出拟议的举措。移除echo(
以实际移动(检查后......)