如何使用windows cmd命令将所有文件移动到父文件夹

时间:2014-08-28 04:49:46

标签: windows cmd directory

例如:

我有

  • C:\文件夹\ Subfolder1 \ SubfolderA \ file1.pdf
  • C:\文件夹\ Subfolder1 \ SubfolderB \ file2.pdf
  • C:\文件夹\ Subfolder1 \ Subfolderc \ file3.pdf

我只想拥有这条道路:

  • C:\文件夹\ Subfolder1 \ SubfolderA
  • C:\文件夹\ Subfolder1 \ SubfolderB
  • C:\文件夹\ Subfolder1 \ Subfolderc
  • C:\文件夹\ Subfolder1 \ file1.pdf
  • C:\文件夹\ Subfolder1 \ file2.pdf
  • C:\文件夹\ Subfolder1 \ file3.pdf

我正在使用Windows 7,并在CMD中尝试了不同的命令,例如:

Move C:\Folder\Subfolder1\SubfolderA\*.* C:\Folder\Subfolder1\SubfolderA

我花了将近一天时间探索不同的解决方案,因为我正在处理数千个文件;这样做是不切实际的。

2 个答案:

答案 0 :(得分:0)

我认为我理解正确,因此,下面是解决方案。

想象一下有两个文件夹:

C:\ABC

C:\ABC\XYZ

将所有文件从C:\ABC\XYZ转移到C:\ABC,执行以下操作:

  1. 导航至C:\ABC\XYZ

  2. 执行命令: move *.* ..

  3. 那就是它。

    来自C:\ABC\XYZ的所有文件都将移至父文件夹,即C:\ABC\

    下面是一些图片来演示这个解决方案。

    • 文件夹ABC包含XYZ文件夹

    folder ABC contains XYZ folder

    • 我们导航到XYZ并且存在一些文件

    we navigate to XYZ and there are some files exist

    • 我们执行move *.* ..命令将文件传输到父(ABC)文件夹

    we execute "move" command

    • 现在XYZ为空

    now XYZ is empty

    来自XYZ的所有文件现在都在ABC(父文件夹)

    and all files from XYZ are in ABC now

答案 1 :(得分:0)

尝试此命令

for /d %A in ("D:\Shawu\Access\Main\*") do @(pushd "%A"&(for /r /d %B in (*) do @move /y "%B\*" "%A" 2>nul)&popd)

小心名称重复的文件。它会覆盖。我建议你先试试一些测试文件,看看你是否得到了理想的结果。

谢谢!