标题: [文件管理] 批处理实现照片名批量重命名排序 [打印本页]
作者: saber 时间: 2009-3-7 20:13 标题: 批处理实现照片名批量重命名排序
最近整理图片收藏夹,发现照片名都是毫无规律的。于是决心把它们重命名排序,以方便以后查找。但工作量太大了,数百张照片何时能够改完?
于是写了个批处理.只几句就解决问题了。。。尽管简单但还是很实用的,给大家分享下...........- @echo off
- setlocal enabledelayedexpansion
- set a=0
- for %%i in (*.jpg) do (set /a a+=1 && ren %%i !a!.jpg)
- echo 共排序了%a%张JPG图片
- pause>nul
复制代码
作者: Batcher 时间: 2009-3-7 20:24
加上双引号比较好吧,以防文件名中有空格。
作者: saber 时间: 2009-3-7 20:32
我刚学批处理。有很多都不懂,很感谢上楼的指教..
作者: Batcher 时间: 2009-3-7 20:35 标题: 回复 3楼 的帖子
没有关系,这些细节的东西可以在今后的学习中慢慢积累,毕竟罗马不是一天建成的:)
作者: yslyxqysl 时间: 2009-3-7 20:40
可以用
for /f "delims=" %%i in ('dir *.jpg /s') do set /a a+=1 & ren "%%i" "!a!.jpg"
整理子目录下的图片。
作者: saber 时间: 2009-3-7 21:21
我正想研究下如何把功能扩展到子目录...五楼就弄出来了 太感谢你了
在这果然学到很多知识
作者: Batcher 时间: 2009-3-7 23:43 标题: 回复 6楼 的帖子
遍历目录除了使用for+dir /s,还可以使用for /r,你可以留意一下别人的代码:)
作者: irresolute 时间: 2009-3-8 13:47
- for /f "delims=" %%i in ('dir *.jpg /s') do set /a a+=1 & ren "%%i" "!a!.jpg"
复制代码
五楼的这句话中是不是少了个参数,是不是应该改成如下:- for /f "delims=" %%i in ('dir *.jpg /s/b') do set /a a+=1 & ren "%%i" "!a!.jpg"
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |