在Windows中搜索多个文件,复制到新文件夹

时间:2017-05-31 19:03:03

标签: windows

我正在运行Windows,我有一大堆.pdf文件(几千个)都存储在一个大目录中,然后所有各种组织到该主目录中的各种子目录中。

例如为:     K:\OriginalDirectory [main directory] K:\OriginalDirectory\2010 [subdirectory 1] K:\OriginalDirectory\2011 [subdirectory 2] K:\OriginalDirectory\2013 [subdirectory 3]

我的问题:我需要将大约1900个这些文件复制并粘贴到一个新目录中。 Windows"找到"功能不会让我这样做,因为尝试使用"或"运算符组合1900个唯一文件名超过了#34;找到。"

的255个字符限制

所以我尝试了以下(基于另一个StackOverflow答案),使用命令行:     C:\OriginalDirectory>for %I in (doc1.pdf doc2.pdf doc3.pdf) do copy %I C:\SomeOtherDirectory

这样可行,但不会搜索子目录。此外,它要求我输入所有1900个文件名,这不是理想的。

我是否可以使用命令行完成此任务,该命令行搜索主目录中的所有子目录并且不要求我输入1900个文件名?

1 个答案:

答案 0 :(得分:0)

您可以使用可以完成工作的批处理脚本。 发现于:Windows batch copy files from subfolders to one folder

为你调整它应该是这样的:

pushd C:\OriginalDirectory
   for /r %%a in (*.pdf) do (
     COPY "%%a" "C:\SomeOtherDirectory\%%~nxa"
   )
 popd

编辑评论原因

仅复制列表中的那些文件:(再次不确定类型“C:/ my ...”,因为我目前无法测试它,但应该以这种方式工作)

pushd C:\OriginalDirectory
   for /r %%a in (type "C:/myFileList.txt") do (
     COPY "%%a" "C:\SomeOtherDirectory\%%~nxa"
   )
 popd