我正在寻找 Windows 命令或批处理脚本来帮助我,我花了 3 个小时阅读/尝试找到解决方案,我知道它就在那里,但我缺乏脚本/编程经验,没有帮助,希望有人可以帮助我。
我有一组文件夹和文件,我想将它们带到第二级子文件夹,在此示例中为子文件夹 1 & 子文件夹 1 & 子文件夹 3 等。
D:文件夹>子文件夹1>子文件夹>子文件夹>文件
>subfolder2>subfolder>files
>subfolder3>subfolder>files
>subfolder4>subfolder>subfolder>files
答案1
你的目标很危险 - 如果多个子目录中存在相同的文件名会发生什么?给定文件夹中只能存在一个版本。
以下命令提示符将根据您的要求移动文件,重复的名称将覆盖具有该名称的现有文件:
for /d %A in ("d:\folder\*") do @(pushd "%A"&(for /r /d %B in (*) do @move /y "%B\*" "%A" 2>nul)&popd)
或者,作为批处理脚本:
@echo off
for /d %A in ("d:\folder\*") do (
pushd "%A"
for /r /d %B in (*) do move /y "%B\*" "%A" 2>nul
popd
)