如何写如下批处理命令,执行搜索同名文件并分别保存

2024-11-25 14:00:02
推荐回答(3个)
回答1:

for /f "tokens=1* delims=_" %%a in ('dir/b e:\aaa\*.csv') do md e:\%%a & move "%%a_%%b" "e:\%%a\"

根据你的图显示都有_符号间隔,所以此批处理需要是在这个前提下..而且要放在e:\aaa文件夹内执行
分类的文件夹是以文件开头的名字命名的..AX01开头的文件就移入E:\AX01文件夹内..
一是为了代码简洁效率..
二是我个人觉得这样更直观..
不知能否满足要求..

回答2:

=======================代码开始=============================
@echo off
SetLocal EnableDelayedExpansion
cls
set /p a=请输入要移动文件的开头特征代码:
for /r %%i in (!a!*.csv) do (
md "E:\!a!" 2>nul
move "%%i" "E:\!a!\"
)
pause&call %0
=======================代码结束=============================

说明:保存为BAT放在你需要整理的目录下,运后会要你输入要移动文件的前面几个代码,例如输入图中的aX07就行了.并且它会帮你在E盘下建立一个以你刚才输入名字的文件夹,全部自动的,完成一批后会返回,你再输入.......WIN7下面测试过了.试试吧
如果要移动其它类型的,自动改一下代码就行了.

回答3:

按提问者要求,代码简单,括号里的字母可根据需要添加删除。
@echo off
for %%i in (a b c d m y) do move e:\aaa\%%i*.csv e:\%%i