替换为多个目录中的文件
replace with files from multiple directories
我有大量的 JPEG 文件,它们已分类并放置在几个不同的目录中。不幸的是,这些目录丢失了——尽管我能够从旧版本中恢复它们。但是所有文件都已损坏。
幸运的是,我还有未排序的 JPEG 文件,我想用这些文件名正常的文件替换损坏的文件。所以基本上遍历未排序的文件并将它们与排序的文件匹配。
我发现通过使用命令 replace
我能够做到这一点并且它完美地工作,但有一个例外:我一次只能通过 1 个源目录。这是一个问题,因为未排序的 JPEG 文件位于约 2000 个不同的目录中。
我目前正在做的是:
replace "folder1\folder2\folder3\folder4\*.jpg" "sorted_images_dir" /s
我想做的是:
replace "folder1\*EVERY SUBDIRECTORY OF folder1*\*.jpg" "sorted_images_dir" /s
这可以在命令行上实现还是我必须创建一个批处理文件?如果是这样,对此有何建议?看起来这将是一个相当简单的任务。
阅读 HELP FOR
并尝试 FOR /D %a in (*) do @echo %a
这样您可能会遍历当前目录中的所有文件夹。
然后您可以尝试 FOR /D /R %a in (*) do @echo %a
对所有文件夹和子文件夹进行递归迭代。
所以,终于可以试试了
FOR /D /R %a in (*) do @replace "%a\*.jpg" "sorted_images_dir" /s
我有大量的 JPEG 文件,它们已分类并放置在几个不同的目录中。不幸的是,这些目录丢失了——尽管我能够从旧版本中恢复它们。但是所有文件都已损坏。
幸运的是,我还有未排序的 JPEG 文件,我想用这些文件名正常的文件替换损坏的文件。所以基本上遍历未排序的文件并将它们与排序的文件匹配。
我发现通过使用命令 replace
我能够做到这一点并且它完美地工作,但有一个例外:我一次只能通过 1 个源目录。这是一个问题,因为未排序的 JPEG 文件位于约 2000 个不同的目录中。
我目前正在做的是:
replace "folder1\folder2\folder3\folder4\*.jpg" "sorted_images_dir" /s
我想做的是:
replace "folder1\*EVERY SUBDIRECTORY OF folder1*\*.jpg" "sorted_images_dir" /s
这可以在命令行上实现还是我必须创建一个批处理文件?如果是这样,对此有何建议?看起来这将是一个相当简单的任务。
阅读 HELP FOR
并尝试 FOR /D %a in (*) do @echo %a
这样您可能会遍历当前目录中的所有文件夹。
然后您可以尝试 FOR /D /R %a in (*) do @echo %a
对所有文件夹和子文件夹进行递归迭代。
所以,终于可以试试了
FOR /D /R %a in (*) do @replace "%a\*.jpg" "sorted_images_dir" /s