在文件夹中的所有目录的路径中插入一个目录
Inserting a directory in path for all directories in a folder
我有这个文件夹结构:
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)
是否可以使用批处理文件,因为我有太多文件夹无法手动执行此操作。
简单地计算出您需要对每个文件夹执行的步骤。您可以使用通配符批量移动或重命名一组文件。但文件夹必须单独移动或重命名。
- 创建 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
)
我有这个文件夹结构:
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)
是否可以使用批处理文件,因为我有太多文件夹无法手动执行此操作。
简单地计算出您需要对每个文件夹执行的步骤。您可以使用通配符批量移动或重命名一组文件。但文件夹必须单独移动或重命名。
- 创建 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
)