मैं कारणों की छँटाई के लिए निरंतर प्रकरण संख्या की लंबाई रखूँगा।
एक्सटेंशन के बारे में क्या (मेरे एक लाइनर उन्हें संरक्षित करता है)?
कमांड लाइन में:
for %F in ([*) do @for /f "tokens=2-4 delims=-_[]" %A in ("%F") do @echo Ren "%~fF" "%A Episode %B - %C%~xF"
नमूना उत्पादन:
Ren "Q:\Test\2018\04\05\[Source]SeriesName_-_001_EpisodeName_[480p][DVD][Uploader]" "SeriesName Episode 001 - EpisodeName"
Ren "Q:\Test\2018\04\05\[Source]SeriesName_-_100_EpisodeName_[1080p][BD][Uploader]" "SeriesName Episode 100 - EpisodeName"
Ren "Q:\Test\2018\04\05\[Source]SeriesName_-_010_EpisodeName_[720p][BD][Uploader]" "SeriesName Episode 010 - EpisodeName"
एक बैच फ़ाइल में सभी प्रतिशत संकेतों को दोगुना करें।
सभी के लिए पहला एक के साथ शुरू सभी मदों को पुन: प्रसारित करता है [
दूसरे के लिए सभी निर्दिष्ट परिसीमाओं में नाम विभाजित करता है (आस-पास वाले केवल एक को गिनते हैं) केवल दूसरे से चौथे स्थान पर ले जाते हैं।
रेन कमांड केवल सुरक्षा कारणों से गूँजती है। आउटपुट ठीक है, तो प्रतिध्वनि निकालें।
संपादित करें: यह बैच फ़ाइल संस्करण अग्रणी शून्य हटाता है:
:: SU1310869.cmd
@Echo off&SetLocal EnableExtensions EnableDelayedExpansion
:: cd /d "X:\folder\episodefiles
for %%F in ([*) do @for /f "tokens=2-4 delims=-_[]" %%A in ("%%F") do (
set /a Num=1%%B - 1000
@echo Ren "%%~fF" "%%A Episode !Num! - %%C%%~xF"
)