我想将电脑上的所有图片复制到一个文件夹中

我想将电脑上的所有图片复制到一个文件夹中

我想将我的电脑硬盘(有两个分区)中的所有文件夹和子文件夹中的任何文件扩展名(如、、等)的所有图像复制到一个文件夹中.jpg.png.gif

我总共有 250,000 张图片。

答案1

最简单的方法可能是制作一个批处理文件,它以递归方式搜索特定文件类型,并将其所有实例复制到您选择的文件夹中。此脚本应该一次为一个分区完成此任务:

for /R "C:\" %%G in (*.png *.jpg *.jpeg *.gif) do copy "%%G" "E:\allPictures\"
pause

请注意,我强烈建议您添加一个外部硬盘并将输出指向其上的文件夹。您不希望批处理脚本从其自己的输出文件夹复制。

E:\allPictures\是输出,这就是您需要更改的内容。

将其保存为“something.bat”并执行。

解释

脚本开始从您指定的目录进行搜索。在我的示例中,我C:\根据您的要求进行了选择。

/R告诉它开始以递归方式搜索所选文件夹下的每个文件夹,查找给定的文件类型:(*.png *.jpg *.jpeg *.gif)

%%G是文件完整路径的占位符/容器。因此,如果它刚找到的文件符合请求的文件类型,它将把它提供给复制命令。

最后您将获得输出文件夹的路径。E:\allPictures\

最后pause,您就知道什么时候完成。

希望这能回答你的问题。

祝你好运!

答案2

在 Windows 资源管理器中,搜索:

*.png OR *.gif OR *.jpg OR *.jpeg*

选择所有文件并复制到你想要的位置

答案3

你可以使用一些简单的东西,例如复制

 xcopy c:\*.jpg e:\ /s

这会将 C: 驱动器中的所有 JPG 文件复制到 E: 的根目录,并在 C: 驱动器上创建 XCOPY 找到的文件夹。

您只需对不同的文件类型(例如 gif、png、tiff 或您想要合并的任何其他文件格式)重复执行此操作。

答案4

在 PowerShell 中执行此操作。

$sourcePath = 'C:\StartFolder'
$destPath = 'C:\DestFolder'

Get-ChildItem $sourcePath -Recurse -Include '*.foo', '*.bar' | Foreach-Object `
    {
        $destDir = Split-Path ($_.FullName -Replace [regex]::Escape($sourcePath), $destPath)
        if (!(Test-Path $destDir))
        {
            New-Item -ItemType directory $destDir | Out-Null
        }
        Copy-Item $_ -Destination $destDir
    }

相关内容