co masz na myśli, zmieniając wszystkie rozszerzenia na *****. jpg? czy to oznacza wszystkie rozszerzenia plików do jpg? jeśli tak, użyj ren . * .jpg
Imran Rizvi
jaki system operacyjny? Jak chcesz je zmienić?
Bryce,
@bryce poza systemem operacyjnym Windows ..
Berker Yüceer
Odpowiedzi:
298
Możesz użyć ren(jak w zmianie nazwy ):
ren *.XXX *.YYY
I oczywiście zmień XXX i YYY na odpowiednie rozszerzenia. Spowoduje to zmianę od XXX do YYY. Jeśli chcesz zmienić wszystkie rozszerzenia, po prostu użyj ponownie symbolu wieloznacznego:
ren *.* *.YYY
Jednym ze sposobów wykonania tego działania rekurencyjnego jest użycie FORpolecenia. Może być używany z /Ropcją rekurencyjnego zastosowania polecenia do pasujących plików. Na przykład:
for /R %x in (*.txt) do ren "%x" *.renamed
zmieni wszystkie .txtrozszerzenia na .renamedrekurencyjne, zaczynając od bieżącego katalogu.
%xjest zmienną przechowującą pasujące nazwy plików.
A ponieważ masz tysiące plików, pamiętaj, aby poczekać, aż kursor ponownie zacznie migać, wskazując, że wszystko działa.
Uwaga: działa to tylko z cmd. Nie będzie działać na Powershell ani Bash
Wzorzec zastępczy to inna nazwa pliku z osadzonymi indeksami symboli wieloznacznych, z których każdy składa się ze znaku #, po którym następuje cyfra od 1 do 9. W nowej nazwie pasującego pliku, indeksy symboli wieloznacznych są zastępowane rzeczywistymi znakami pasującymi do odnośnika symbole wieloznaczne w oryginalnej nazwie pliku.
i
Zwróć uwagę, że powłoka normalnie rozwija symbole wieloznaczne * i?, Co w przypadku ren jest niepożądane. Dlatego w większości przypadków konieczne jest ujęcie wzoru wyszukiwania w cudzysłów.
man ren? Pytanie dotyczyło systemu Windows / cmd. Czy teraz udostępniają one manstrony? Co to jest ren-1.0i jak możemy zobaczyć jego manstronę w kontekście?
Oto jak to zrobić: jestem na dysku d w wierszu polecenia (CMD), więc używam:
d:\>ren *.* *.wav
To tylko przykład rozszerzeń plików, możesz użyć dowolnego typu rozszerzenia pliku, takiego jak WAV, MP3, JPG, GIF, bmp, PDF, DOC, DOCX, TXT, zależy to od systemu operacyjnego.
A ponieważ masz tysiące plików, pamiętaj, aby poczekać, aż kursor ponownie zacznie migać, wskazując, że wszystko działa.
@echo off
setlocal enabledelayedexpansion
for %%f in (*) do (
set B=%%f
set B=!B:%CD%\=!
ren "!B!" "!B:.StoredProcedure=!"
)
Powyższy skrypt usuwa podciąg .StoredProcedurez nazwy pliku. Jestem pewien, że można go dostosować do większej liczby przypadków, poprosić o wkład i ogólnie być bardziej ogólny.
zastąpić dwa setpolecenia z tym jednym z nich: set "B=%%~nxf". ( %%~nxfTo n AME i E x napięcie %%f). %cd%może być niepoprawny, kiedy robisz to rekurencyjnie.
Stephan
1
Wiem, że to jest tak stare, ale wylądowałem na nim, a podane odpowiedzi nie działają dla mnie na PowerShell, więc po przeszukaniu znalazłem to rozwiązanie
Odpowiedzi:
Możesz użyć
ren
(jak w zmianie nazwy ):I oczywiście zmień XXX i YYY na odpowiednie rozszerzenia. Spowoduje to zmianę od XXX do YYY. Jeśli chcesz zmienić wszystkie rozszerzenia, po prostu użyj ponownie symbolu wieloznacznego:
Jednym ze sposobów wykonania tego działania rekurencyjnego jest użycie
FOR
polecenia. Może być używany z/R
opcją rekurencyjnego zastosowania polecenia do pasujących plików. Na przykład:for /R %x in (*.txt) do ren "%x" *.renamed
zmieni wszystkie
.txt
rozszerzenia na.renamed
rekurencyjne, zaczynając od bieżącego katalogu.%x
jest zmienną przechowującą pasujące nazwy plików.A ponieważ masz tysiące plików, pamiętaj, aby poczekać, aż kursor ponownie zacznie migać, wskazując, że wszystko działa.
Uwaga: działa to tylko z cmd. Nie będzie działać na Powershell ani Bash
źródło
ren *.* *.jpg > E:\Log\Cmd\ExtChange\ext.txt
?FOR
na CMD
rodzaj
. wybierze wszystkie pliki i zmieni nazwę na * (jakąkolwiek nazwę mają) oraz rozszerzenie na jpg
źródło
Zachowanie związane ze zmianą nazwy jest czasami „mniej niż intuicyjne”; na przykład...
ren * .THM * .jpg zmieni nazwy plików THM, aby miały rozszerzenie .jpg. np .: GEDC003.THM będzie GEDC003.jpg
ren * .THM * b.jpg zmieni nazwy plików THM na * .THMb.jpg. np .: GEDC004.THM zmieni się na GEDC004.THMb.jpg
ren * .THM * .b.jpg zmieni nazwy plików THM na * .b.jpg, np .: GEDC005.THM zmieni się na GEDC005.b.jpg
źródło
UWAGA: nie dla systemu Windows
Używając ren-1.0 poprawną formą jest:
Z
man ren
i
źródło
man ren
? Pytanie dotyczyło systemu Windows /cmd
. Czy teraz udostępniają oneman
strony? Co to jestren-1.0
i jak możemy zobaczyć jegoman
stronę w kontekście?to proste
spróbuj tego w wierszu polecenia
źródło
Tylko dla osób, które chcą to zrobić w plikach wsadowych, ten kod działa:
W tym przykładzie wszystkie pliki z rozszerzeniami .jpg w katalogu C: \ Users \ jonathan \ Desktop \ test zostaną zmienione na * .png.
źródło
Zmień nazwę wielu rozszerzeń plików:
Chcesz zmienić
ringtone1.mp3
,ringtone2.mp3
abyringtone1.wav
,ringtone2.wav
Oto jak to zrobić: jestem na dysku d w wierszu polecenia (CMD), więc używam:
To tylko przykład rozszerzeń plików, możesz użyć dowolnego typu rozszerzenia pliku, takiego jak WAV, MP3, JPG, GIF, bmp, PDF, DOC, DOCX, TXT, zależy to od systemu operacyjnego.
A ponieważ masz tysiące plików, pamiętaj, aby poczekać, aż kursor ponownie zacznie migać, wskazując, że wszystko działa.
źródło
W moim przypadku miałem katalog z ponad 800 plikami kończącymi się na
.StoredProcedure.sql
(były skrypty z SSMS ).Przedstawione powyżej rozwiązania nie działały. Ale wymyśliłem to:
(Na podstawie odpowiedzi na programowanie wsadowe - uzyskaj względną ścieżkę pliku )
Powyższy skrypt usuwa podciąg
.StoredProcedure
z nazwy pliku. Jestem pewien, że można go dostosować do większej liczby przypadków, poprosić o wkład i ogólnie być bardziej ogólny.źródło
set
polecenia z tym jednym z nich:set "B=%%~nxf"
. (%%~nxf
To n AME i E x napięcie%%f
).%cd%
może być niepoprawny, kiedy robisz to rekurencyjnie.Wiem, że to jest tak stare, ale wylądowałem na nim, a podane odpowiedzi nie działają dla mnie na PowerShell, więc po przeszukaniu znalazłem to rozwiązanie
zrobić to w PowerShell
Kredyt trafia do http://powershell-guru.com/powershell-tip-108-bulk-rename-extensions-of-files/
źródło
Alternatywnym sposobem, aby zmienić nazwy plików przy użyciu Renamer pakiet npm.
poniżej znajduje się przykład zmiany nazw rozszerzeń plików
źródło
To, co zadziałało, to ten (najpierw cd do folderu):
źródło