中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-09 22:48
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 怎样按Jpg相片创建生成时间的先后来批量重新命名? 查看 873 回复 4
楼 主 怎样按Jpg相片创建生成时间的先后来批量重新命名? 发表于 2008-10-02 23:50 ·  中国 广东 东莞 电信
中级用户
★★
积分 461
发帖 243
注册 2007-10-14 16:56
18年会员
UID 99730
性别 男
状态 离线
怎样按Jpg相片创建生成时间的先后来批量重新命名?

如最近期内的文件加前缀0001,0002....依次往后重命名.
2 发表于 2008-10-03 00:14 ·  中国 贵州 黔西南布依族苗族自治州 兴义市 电信
银牌会员
★★★
积分 2,098
发帖 566
注册 2007-09-11 07:27
18年会员
UID 97070
性别 男
状态 离线
按Jpg相片创建时间排序:(最近的在前面)
dir /a-d /b /tc /o-d *.jpg
3 发表于 2008-10-03 16:03 ·  中国 四川 成都 电信
初级用户
★★
积分 145
发帖 95
注册 2008-04-12 16:29
18年会员
UID 115703
性别 男
状态 离线
4 刚好我曾经写过一个 发表于 2008-10-03 22:24 ·  中国 新疆 石河子 电信
初级用户
积分 50
发帖 25
注册 2007-03-29 14:07
19年会员
UID 83301
性别 男
状态 离线
@echo off

if "%~2" equ "" goto shuomin
if "%~3" equ "" (set px=n) else (set px=%~3)

setlocal enabledelayedexpansion

for /f %%C in ('dir "%~1" /d /a-d^|find "个文件"') do set wenjianshu=%%C
set wishu=1
:loop
if !wenjianshu! gtr 9 (
set /a wenjianshu/=10
set /a wishu+=1
goto loop
)

set i=0
for /f "tokens=* delims=" %%N in ('dir "%~1" /o%px% /b /a-d') do (
set /a i+=1
set si=0000000!i!
set si=!si:~-%wishu%!
if "%~4" equ "" (
ren "%%N" "%~2_!si!%%~xN"
) else (
ren "%%N" "%~2_!si!.%~4"
)
)

echo 完成,重命名 !i! 个文件。
goto :eof

:shuomin
echo.
echo 顺序重命名文件
echo.
echo %~n0 ^<源文件^> ^<新名称前缀^>
echo.
echo 排序规则为 dir 命令的排序规则 n s e d g
echo.
echo 例: %~n0 * mv n wmv
5 发表于 2008-10-04 16:24 ·  中国 广东 东莞 电信
中级用户
★★
积分 461
发帖 243
注册 2007-10-14 16:56
18年会员
UID 99730
性别 男
状态 离线
谢谢各位的帮忙,搜索旧帖修改了下也凑合用了.
@echo off
setlocal ENABLEDELAYEDEXPANSION
SET num=0000
set srcfolder=e:\photo
FOR /F %%i IN ('dir %srcfolder% /a-d /b /tc /o-d *.jpg ') DO (
SET /A num+=1
REN %%i !num!!%%i
)
pause
论坛跳转: