2014-04-07 87 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

相關問題