Nie jestem pewien, czy chcesz plik wsadowy do:
- Zmień nazwę 1 określonego pliku
- Zmień nazwę wszystkich plików w katalogu
- Zmień nazwy plików w katalogu, który pasuje do określonego wzorca
- Coś innego ?
Oto przykład pliku wsadowego, który należy wykonać w # 3 (Zmień nazwy plików w katalogu, który pasuje do określonego wzorca).
Uruchom plik wsadowy, aby upewnić się, że wyświetla listę wszystkich plików, których nazwę chcesz zmienić. Początkowo stare i nowe nazwy plików będą wyświetlane dla wszystkich znalezionych plików, ale nie zostaną zmienione nazwy plików. Może być konieczne zmodyfikowanie wartości searchpattern, aby wyświetlić żądane pliki. Po wyświetleniu poprawnych plików postępuj zgodnie z instrukcjami poniżej pliku wsadowego, aby zmienić nazwę.
@echo off
set "searchfor=domainname"
set "replacewith=otherdomainname"
set "searchpattern=*.%searchfor%.*"
for %%f in ("%searchpattern%") do call :work "%%~f"
set "searchfor="
set "replacewith="
set "searchpattern="
set "filematched="
set "filenewname="
goto :EOF
:work
set filematched=%~1
rem You can't do it directly like:
rem set "filenewname=%filematched:%searchfor%=%replacewith%%"
for /F "usebackq delims=" %%g in (`echo set "filenewname=%%filematched:%searchfor%=%replacewith%%%"`) do %%g
echo Renaming "%filematched%" to "%filenewname%"
rem delete the next line (goto :EOF) to make renaming active
goto :EOF
rem this line actually does the file renaming
ren "%filematched%" "%filenewname%"
goto :EOF
Uwaga: Aby zapobiec zmianie nazw niewłaściwych plików lub zmianie nazwy plików w niewłaściwy sposób, plik wsadowy wyświetli stare i nowe nazwy plików dla wszystkich znalezionych plików, ale nie zostaną zmienione nazwy plików.
Po uruchomieniu pliku wsadowego i upewnieniu się, że poprawne nazwy plików zostaną poprawnie zmienione, możesz edytować plik, aby usunąć opisane linie, aby zmienić nazwę, a następnie ponownie uruchomić plik wsadowy.
Aby to zrobić, znajdź dwie następujące linie:
rem delete the next line (goto :EOF) to make renaming active
goto :EOF
Następnie usuń linię, która mówi „goto: EOF” (lub usuń obie linie).
Nie usuwaj „goto: EOF” z żadnego innego miejsca w pliku wsadowym (można go znaleźć w kilku miejscach, więc usuń poprawne).
Jeśli potrzebujesz któregokolwiek z tych plików wsadowych wyjaśnionych ci lub jeśli nie robi tego, co naprawdę chcesz, daj mi znać.