本帖最后由 小胖狐狸 于 2012-11-5 15:13 编辑
相机驱动丢失导致自带软件无法使用,想通过读卡器+批处理的方式自动对相机SD卡中文件进行处理:
SD卡根目录下DCIM文件夹,该文件夹中会自动生成名为100RICOH的文件夹,该文件夹下存放的是不同日期拍摄的照片和视频,当达到一定数量时,相机会在DCIM下生成101ricoh文件夹继续存放
如下所示
DCIM
-100RICOH
-IMG001.JPG
-IMG002.JPG
......
-101RICOH
-IMG003.JPG
-AVI004.AVI
......
我想在SD卡根目录下放一个批处理,跟DCIM并列- @echo off
- :: 获取DCIM下的目录名
- dir .\DCIM\ /B /AD>C:\RICOH_dir.TXT
- for /f %%I in (c:\RICOH_dir.TXT) do (
- dir .\DCIM\%%I\ /N /A-D>C:\%%I.TXT
- :: 获取文件的修改日期后创建以日期为名的文件夹,并move文件到该文件夹中
- for /f "skip=5 tokens=1-3,6 delims=-/ " %%i in (c:\%%I.txt) do (
- if not exist .\DCIM\%%i%%j%%k md .\DCIM\%%i%%j%%k
- move .\DCIM\%%I\%%l .\DCIM\%%i%%j%%k\
- pause
- )
- )
复制代码 该批处理主要功能达到了,但是由于分析文本文件RICOH_dir.TXT时,最后两行文字会对for的新建文件夹产生影响,生成不需要的文件夹,不知如何可以让其不产生呢?
5 个文件 7,764,576 字节
0 个目录 494,206,976 可用字节- 驱动器 G 中的卷没有标签。
- 卷的序列号是 0EAE-DA68
-
- G:\DCIM\100RICOH 的目录
-
- 2012-09-01 21:13 290,568 R0013415.AVI
- 2012-08-25 09:18 1,952,653 R0013394.JPG
- 2012-09-01 16:40 1,875,363 R0013413.JPG
- 2012-09-22 08:55 1,841,520 R0013429.JPG
- 2012-10-17 21:44 1,804,472 R0013457.JPG
- 5 个文件 7,764,576 字节
- 0 个目录 494,206,976 可用字节
复制代码 for里用eol可以忽略特定字符开头的行,但是如果在for里用eol=,是不是得把这个参数写在""中的最后,那么 delims就没办法使用空格做分隔符了,学艺不精,很苦恼 |