如何将MP4文件从一个位置重定位到另一个位置?

时间:2017-07-13 19:45:24

标签: windows vba powershell

我的外部硬盘上有一堆图片和视频相互混合,我希望将所有视频文件从一个位置移动到另一个位置,同时保持相同的结构。这是否可以在不改变图像的当前结构的情况下实现?示例如下:

Folder Structure Example

2 个答案:

答案 0 :(得分:0)

由于文件夹位于根目录中,因此您无法使用顶级文件夹并使用PSPath,因此请尝试此操作:

gci 'C:\Folder A' | ? {$_.Extension -eq '.MP4'} | Move-Item -Destination 'D:\Folder A'
gci 'C:\Folder B' | ? {$_.Extension -eq '.MP4'} | Move-Item -Destination 'D:\Folder B'

这应该将所有MP4文件移动到D:\并在C:\

中留下behing JPEG

答案 1 :(得分:0)

该图显示它们位于C驱动器上(通常不是外部驱动器)并且只有一个目录。如果是这种情况,您可以在Windows资源管理器中按文件类型进行简单排序。缺少大量信息,图表似乎并不是您实际要问的内容。

该图表说明如下:

"C:\Folder A\Image 1.jpg" move to "C:\Folder A\Image 1.jpg"
"C:\Folder B\Image 4.jpg" move to "C:\Folder B\Image 4.jpg"

正如您所看到的,这是多余的,因为该文件已经位于您希望它转到的路径中。

您只想将.MP4文件移动到D盘。

"C:\Folder A\Video 1.MP4" move to "D:\Folder A\Video 1.MP4"
"C:\Folder A\Video 1.MP4" move to "D:\Folder B\Video 1.MP4"

如果要保持文件结构命名相同。你必须做这样的事情,但你的问题毫无意义。这是我试图理解你想要说的话,而不告诉我们你是非法下载,而你想要清理。

# Variables
$sourcePath = 'Z:\Folder A'
$destPath = 'X:\Folder A'

# Movie folder Structure and File type
Get-ChildItem $sourcePath -Recurse -Include '*.MP4' | Foreach-Object `
    {
        $destDir = Split-Path ($_.FullName -Replace [regex]::Escape($sourcePath), $destPath)
        if (!(Test-Path $destDir))
        {
            New-Item -ItemType directory $destDir | Out-Null
        }
        # Backup Files
        #Copy-Item $_ -Destination $destDir

        # Move Files
        #Move-Item $_ -Destination $destDir
    }
相关问题