在路径中插入文件夹中所有目录的目录

时间:2016-03-22 06:21:39

标签: batch-file windows-7 command-prompt subdirectory

我有这个文件夹结构:

mainDir
----dira
--------(files/folders)
----dirb
--------(files/folders)
----dirc
--------(files/folders)
...
...
...
----dirz
--------(files/folders)

我想遍历mainDir下的所有目录,在dirMain下的每个目录中创建一个名为xyz的文件夹,并从dir#移动所有内容(其中#是a,b .. .z)到xyz(在各自的目录下)。

结果如下:

mainDir
----dira
--------xyz
------------(files/folders)
----dirb
--------xyz
------------(files/folders)
----dirc
--------xyz
------------(files/folders)
...
...
...
----dirz
--------xyz
------------(files/folders)

这可能是使用批处理文件,因为我有太多的文件夹来手动执行此操作。

1 个答案:

答案 0 :(得分:2)

只需完成每个文件夹上需要执行的步骤。您可以使用通配符批量MOVE或RENAME一组文件。但文件夹必须单独MOVEd或RENAME。

  • 创建xyz文件夹
  • 将所有文件移至xyz文件夹
  • 将每个子文件夹(xyz除外)移动到xyz文件夹

然后使用FOR / D循环为每个文件夹执行这些步骤。

@echo off
for /d %%F in (main\*) do (
  pushd "%%F"
  md "xyz"
  move * "xyz" >nul
  for /d %%G in (*) do if "%%G" neq "xyz" move "%%G" "xyz" >nul
  popd
)