Windows 10 - 将所有子文件夹及其内容上移一级

Windows 10 - 将所有子文件夹及其内容上移一级

我有以下内容:

w:\encoded\mp4\movie-1
                      \title00.mp4
                      \title01.mp4 
                      \title02.mp4
              \movie-2
                      \title00.mp4
                      \title01.mp4
                      \title02.mp4
                      \title03.mp4
              \movie-7
                      \title00.mp4
                      \title01.mp4
                      \cover.jpg
              \movie-21
                      \title00.mp4
                      \title01.mp4

等等。我想基本上将所有子文件夹及其中的任何文件/文件夹向上移动一级,甚至完全移动到另一个文件夹。

所以它看起来像这样:

w:\encoded\movie-1
                  \title00.mp4
                  \title01.mp4 
                  \title02.mp4
          \movie-2
                  \title00.mp4
                  \title01.mp4
                  \title02.mp4
                  \title03.mp4
          \movie-7
                  \title00.mp4
                  \title01.mp4
                  \cover.jpg
          \movie-21
                  \title00.mp4
                  \title01.mp4

任何想法都将不胜感激!

答案1

LotPings是正确的,因为文件夹的 For 循环可以实现这一点。由于您要求将它们上移一个文件夹或可能完全移到另一个文件夹,我使用一些变量对其进行了充实,以便于更改:

@echo off

set "src=W:\encoded\mp4"
set "des=W:\encoded"

for /d %%A in (%src%\*) do (
    move "%%A" "%des%"
)

它本质上是相同的 For 循环,但是您有一个用于表示源(src)目录和目标(des)目录的变量,以防您想要更改它们。

答案2

您可以使用robocopy

/E标志包括空目录,如果您不想包含它们,请使用该/S标志。

robocopy <source> <destination> /E /MOVE
robocopy w:\encoded\mp4\ w:\encoded\ /E /MOVE

相关内容