如何使用cmd删除Windows中的中间目录?

问题描述

例如从这里开始:

directory1/
   101/online/img1.png
   102/online/img2.png
   103/online/img3.png

为此:

 directory1/
   101/img1.png
   102/img2.png
   103/img3.png

在此示例中,101(和 102103...)目录仅包含一个目录 online,该目录始终具有相同的名称。但是,online 目录中可能包含多个文件,但不包含目录。

我正在寻找一种自动化的方式来操作我的文件,因为我有很多这样的案例。我正在寻找 Windows 命令提示符或 Powershell 解决方案。

解决方法

新答案和更新

来自命令行:

pushd directory1
for /D %D in (*) do move /Y %D\online\*.* %D && rmdir /s /q %D\online
popd

或者这个来自 cmd 文件:

pushd directory1
for /D %%D in (*) do move /Y %%D\online\*.* %%D && rmdir /s /q %%D\online
popd