[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off
  2. for %%a in (*.*) do for /f "tokens=5 delims=-." %%b in ("%%a") do (
  3. if not exist %%b\ md %%b\
  4. move "%%a" %%b\
  5. )
复制代码

[ 本帖最后由 hanyeguxing 于 2010-5-9 19:14 编辑 ]
1

评分人数

寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

@echo off每个批处理里都用,关闭回显以及不显示本行
for %%a in (*.*) do 以%%a显示当前目录下所有文件和目录,不包括子目录内,也不包括隐藏或系统属性的文件
for /f "tokens=5 delims=-." %%b in ("%%a") do 解析这些文件名,把“件号”赋值给变量%%b
if not exist %%b\ md %%b\判断“件号”为名的目录是否存在,不存在就创建
move "%%a" %%b\移动符合条件的文件到“件号”目录
以上是for、if、move语法最基本的使用
请在帖子标题前加[已解决]
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

给你补充一下,有可能第六部分不存在,所以也把点“.”作为分隔符
如6000-2004-1-生效-6-0.doc和6000-2004-1-生效-6.doc,都把6作为第五部分

[ 本帖最后由 hanyeguxing 于 2010-5-9 20:13 编辑 ]
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

返回列表