标题: [文件操作] [已解决]批处理怎样取原文件名的前8位来重新命名文件? [打印本页]
作者: ebookhome 时间: 2012-10-29 14:50 标题: [已解决]批处理怎样取原文件名的前8位来重新命名文件?
本帖最后由 ebookhome 于 2012-11-16 15:13 编辑
求一批处理,能批量重命名文件夹中的所有图片,命名方式是取原文件名称的前8位来重新命名文件
如:
原文件名:A1000056人员签到表扫描.jpg
新命名为:A1000056.jpg
谢谢!
作者: cjiabing 时间: 2012-10-29 15:19
思路:
for /r 获取所有文件的文件名
set name=%%~na
ren %%a !name!
作者: 韩立 时间: 2012-10-29 21:19
本帖最后由 韩立 于 2012-10-29 21:21 编辑
写了个- @echo off
- setlocal enabledelayedexpansion
- for /f %%i in ('dir /b') do (
- set n=%%i
- ren %%i !n:~0,8!!n:~-4!)
- pause
复制代码
作者: apang 时间: 2012-10-29 21:39
- @echo off
- for /f "delims=" %%i in ('dir /a-d /b *.jpg') do (
- set "Name=%%~ni"
- setlocal enabledelayedexpansion
- ren "!Name!.jpg" "!Name:~,8!.jpg"
- endlocal
- )
- pause
复制代码
作者: BAT-VBS 时间: 2012-10-30 16:50
回复 3# 韩立
文件名里面有感叹号的话可能会出问题
作者: tmplinshi 时间: 2012-10-30 17:30
本帖最后由 tmplinshi 于 2012-10-30 17:37 编辑
- RenRe -s "^(.{8}).*(\.jpg)$" -e "$1$2"
复制代码
如果需要包括子文件夹的话:- RenRe -r . -s "^(.{8}).*(\.jpg)$" -e "$1$2"
复制代码
RenRe 下载地址:
http://www.dahlsys.com/static/RenRe32.7z
作者: ebookhome 时间: 2012-11-16 15:18
多谢版主以及楼上几位朋友,辛苦了
谢谢大家帮忙
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |