答案 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
}