找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 33271|回复: 11

[文件操作] 批处理怎样根据文件名移动到对应的文件夹?

[复制链接]
发表于 2014-11-8 13:18:07 | 显示全部楼层 |阅读模式
1、D盘D:\workspace\SHome里面有很多文件,文件名为*1123*.xml其中星号为其他字符,文件区别就是看1123、1124、1125、1126等等
2、D:\workspace\UP  里面有很多文件夹,命名就是1123、1124、1125.。。。。。等等,。


怎么写一个批处理,把对应的文件复制到对应的文件夹中??
求大神帮忙!!
发表于 2014-11-8 13:22:38 | 显示全部楼层
回复 1# 雨思99小米粥


    数字两边的字符串长度有规律吗?数字两边是字母还是标点符号?
 楼主| 发表于 2014-11-8 13:27:16 | 显示全部楼层
回复 2# DAIC

就像这样的~~~
文件名的前面和后面有不同的关键字,可以放到两个文件夹里面,如果按前面的放就都按前面的,按后面的放就都按后面的放~~
 楼主| 发表于 2014-11-8 13:31:55 | 显示全部楼层
文件名的前面和后面有不同的关键字,可以放到两个文件夹里面,如果按前面的放就都按前面的,按后面的放就都按后面的放~~


谢谢大神~~每天都有上千个文件得复制~~~烦死了!!
发表于 2014-11-8 19:34:02 | 显示全部楼层
本帖最后由 再世情緣 于 2014-11-9 14:28 编辑
  1. @echo off &color 0a &setlocal enabledelayedexpansion
  2. set "sp=D:\workspace\SHome"
  3. set "ip=D:\workspace\UP"
  4. for /f "delims=" %%a in ('dir /b /a -d /s "%sp%\*.xml" 2^>nul') do (
  5.   set "nm=%%~na" &&set "fm=!nm:*-=!" &&set "fm=!fm:~8,4!"
  6.   xcopy "%%~fa" "%ip%\!fm!" /C /Y /F
  7. )
  8. pause.
复制代码
发表于 2014-11-8 21:40:57 | 显示全部楼层
回复 5# 再世情緣


    楼主说按照前面那里判断也可以,所以 set "fm=!nm:*-=!" 这个应该可以省掉,直接截取就行了。
发表于 2014-11-8 21:42:35 | 显示全部楼层
回复 5# 再世情緣


    还有就是,第三行是不是少了个双引号。
发表于 2014-11-9 14:27:59 | 显示全部楼层
回复 7# DAIC


    额。。。确实后面少了半个。。。谢谢提醒
 楼主| 发表于 2014-11-10 09:00:40 | 显示全部楼层
回复 5# 再世情緣

谢谢大神!!!我赶紧去试试~~
 楼主| 发表于 2014-11-10 09:00:57 | 显示全部楼层
回复 6# DAIC


    同样谢谢您~~
 楼主| 发表于 2014-11-10 09:01:26 | 显示全部楼层
回复 8# 再世情緣

谢谢~~~~~
发表于 2014-11-20 09:41:04 | 显示全部楼层
学习了 我也遇到同样的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 15:04 , Processed in 0.020677 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表