2014-04-07 90 views
0

我有这些文件名,我想用这种格式替换这个文本SYPTE1-PC到SHEFFIELD。替换文件夹上的文件名

目前的形式

1UYK08HJ_20140403165858071_SYPTE1-PC.jpg , 
1YK0BHJX_20140403165902791_SYPTE1-PC.jpg 

要求的格式

1UYK08HJ_SHEFFIELD_2014_04_03_16:58:58:071.jpg 
1YK0BHJX__SHEFFIELD_2014_04_03_16:59:02:791.JPG` 

这是我的查询

@echo off 
pushd "C:\Users\IT-Administrator\Desktop\export" || exit /b 
for /f "tokens=1-4 delims=_." %%A in ('dir /b /a-d *_*.jpg') do (
    Echo ren %%A_%%B_%%C.%%D %%A_%%C_%%B.%%D 
) 
popd 

我能够改变格式,但不能代替文字和日期时间用冒号。

+1

你不能有':在文件名中的字符'是 – foxidrive

+0

它可以只更换文本... – pretyv5

+0

是的,是在一个文件夹树摊开在一个文件夹中的文件或? – foxidrive

回答

1

这将创建renfiles.bat.txt供您检查并重命名为.bat,并在您满意时执行。

它采用所谓的repl.bat一个帮手批处理文件 - 下载来​​自:https://www.dropbox.com/s/qidqwztmetbvklt/repl.bat

repl.bat在同一文件夹中的批处理文件或者是道路上的一个文件夹中。

@echo off 
dir *.jpg /b /a-d |find /i /v "%~nx0" |find /i /v "repl.bat" |repl "(.*?_)(....)(..)(..)(..)(..)(..)(...).*(\..*)" "ren \q$&\q \q$1SHEFFIELD_$2_$3_$4-$5_$6_$7_$8$9\q" xa >"renfiles.bat.txt" 
+0

这就是我想要的,但是...我在renfiles.bat.txt中得到了这些。我将它保存为.bat,当我运行它时,我得到了'C:\ Users \ IT-Administrator> ren“YK08HJX_20140403170543114_SYPTE.jpg”“YK08HJX_SHE FFIELD_2014_04_03-17_05_43_114.jpg” 系统找不到指定的文件。' – pretyv5

+0

但这些文件在那里 – pretyv5

+0

'renfiles.bat'必须在与文件相同的文件夹中运行。 – foxidrive

相关问题