Jakie polecenie w systemie Windows emuluje rekursywne polecenie przenoszenia / zmiany nazwy z systemu Unix?
windows
command-line
script
javamonkey79
źródło
źródło
*.*
działać?robocopy "C:\Source Folder" "C:\Destination Folder" /E /COPYALL /XJ
źródło
Właśnie uruchomiłem mały przykład w moim pudełku Windows XP SP2 z poleceniem move i zadziałało. Wszystkie pliki i katalogi zostały przeniesione ze źródła do miejsca docelowego. source i dest to nazwy katalogów.
źródło
Wbudowane polecenie XCOPY jest zamknięte. Zrobi kopię rekurencyjną, ale nie sądzę, że obsługuje zmianę nazwy.
źródło
zmieni to rekurencyjnie nazwę pliku :-)
zapisz w pliku podaj 2 argumenty od rozszerzenia i do rozszerzenia.
np. nazwa pliku to komenda test.bat: test * .avi * .bmp
zmienia nazwy wszystkich plików z rozszerzeniem avi na bmp (we wszystkich podfolderach :))
Uwaga: To jest korekta dla postu, który odpowiedział 26 października o 13:20 przez Roba Kam. Dał za
gdzie jak to powinno mieć %% zamiast %
źródło
To działało dla mnie lepiej:
Źródło: http://www.islamadel.com/index.php/notes/6-computer/10-windows-command-line
źródło
Istnieją porty Windows dla większości poleceń UNIX:
źródło
Stworzyłem skrypt VB, który będzie wyszukiwał i zamieniał nazwy katalogów ... Mam też wersję plików, jednak myślę, że to wystarczy, aby zacząć od własnego skryptu. Używam tego skryptu, mam
fileandreplacedirs.vbs
i umieszczam go w tym samym folderze, co foldery, których nazwę chcę zmienić. Ponadto niekoniecznie musi się ponownie pojawiać w folderze, ale może zostać zmodyfikowanyźródło
Użyj prostej komendy DOS.
cd do katalogu źródłowego, w którym chcesz rekursywnie zmieniać nazwy rozszerzeń plików.
Wpisz to polecenie:
źródło
Dodałem,
if exist
aby uniknąć powrotu błędów (ma to znaczenie w Jenkins, więc nie psuje kompilacji), gdy plik nie istnieje w każdym folderze:Aby wykonać rekurencyjną zmianę nazwy:
Przykładowa partia:
źródło
PowerShell jest twoim przyjacielem. Nie potrzeba plików wsadowych ani skryptów. Na przykład, aby rekurencyjnie zmienić nazwę wszystkich plików .tiff na .tif w zdalnym katalogu, możesz uruchomić następującą komendę z Powershell:
get-childitem "\\\servername\d$\path" -recurse -Include *.tiff | Rename-Item -NewName { $_.Name.replace(".tiff",".tif") }
źródło
Znalazłem ten skrypt Pythona, który również działa:
Znalezione na: http://gomputor.wordpress.com/2008/09/29/change-the-extension-of-multiple-files-in-a-chosen-directory-with-python/
Dodałem Python do mojej ścieżki i umieściłem powyższy skrypt Pythona w folderze „utils”. Następnie utworzyłem ten prosty skrypt wsadowy, aby go uruchomić: rn.bat:
Zaktualizowałem również powyższy skrypt Pythona, aby pobierał argumenty z wiersza poleceń. rn.py:
Wreszcie wszystko, co musisz teraz zrobić, to coś takiego:
lub
Baw się dobrze z drugim :)
źródło