簡體   English   中英

重命名子目錄中的文件

[英]Renaming files within sub directories

有人可以幫我提供代碼嗎?...我在其中有名為“ book”的主文件夾,下面有500個子文件夾

book/page1/Image/image 2.jpg
book/page2/Image/image 2.jpg
book/page3/Image/image 2.jpg
book/page4/Image/image 2.jpg
book/page5/Image/image 2.jpg
.
.
.

我希望將圖像重命名為:

book/page1/Image/1.jpg
book/page2/Image/2.jpg
book/page3/Image/3.jpg
book/page4/Image/4.jpg
book/page5/Image/5.jpg
.
.
.

請幫助

@ECHO OFF
SETLOCAL
FOR /f "tokens=1*delims=[]" %%i IN (
 'dir /s /b /a-d "u:\book\image 2.jpg"^|find /n /v ""'
) DO ECHO REN "%%j" image%%i.jpg

這應該報告所需的重命名。

在檢查之后,從最后一行刪除ECHO關鍵字以實際執行重命名。

將此放置在book文件夾中的bat文件中。 當然,在嘗試這種操作之前,您應該制作整個書夾的副本。

@echo off
for /f "delims=page" %%a in ('DIR /ad /b') do rename "page%%a\Image\Image2.jpg" "%%a.jpg"

下面的批處理文件將文件重命名為文件夾名稱,從而刪除page部分:

@echo off
setlocal EnableDelayedExpansion

cd \book
for /D %%a in (*) do (
   set folder=%%a
   ren "%%a\Image\image 2.jpg" "!folder:page=!.jpg"
)

下面的批處理文件將文件重命名為一個連續的兩位數,而不考慮文件夾名稱:

@echo off
setlocal EnableDelayedExpansion

cd \book
set number=100
for /D %%a in (*) do (
   set /A number+=1
   ren "%%a\Image\image 2.jpg" "!number:~1!.jpg"
)

如果您希望數字只有一位,則將數字分配更改為此一位: set number=10

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM