windows批量移动指定目录下所有的后缀文件到某个目录

比如,我想把E:\work_doc\hui-vue-master目录下的所有.md文件复制到E:\work_doc\hui-docs目录下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
@echo off
setlocal enabledelayedexpansion

:: 设置源目录
set "source_dir=E:\work_doc\hui-vue-master"
:: 设置目标目录
set "target_dir=E:\work_doc\hui-docs"

:: 创建目标目录(如果不存在)
if not exist "%target_dir%" (
mkdir "%target_dir%"
)

:: 计数器初始化(两位数格式)
set count=100

:: 递归查找并复制所有.md文件
for /r "%source_dir%" %%f in (*.md) do (
:: 自增计数器
set /a count+=1

:: 去掉前导的1(因为初始是100
set "num=!count:~1!"

:: 生成目标文件名(如01.md
set "target_file=%target_dir%\!num!.md"

:: 复制文件
copy "%%f" "!target_file!" >nul

:: 显示进度
echo 已复制: %%f!num!.md
)

echo 操作完成,共复制 %count:~1% 个.md文件到 %target_dir% 目录
pause

推荐文章