Mam kilka plików na polu Ubuntu, które mają różne znaki w nazwach plików, których Windows nie akceptuje (głównie „:” i „*”, ale prawdopodobnie inne).
Jak najprościej zmienić ich nazwy i przenieść je na komputer z systemem Windows? Można zamienić te znaki na „[dwukropek]” i „[gwiazdka]”.
linux
rename
batch-rename
RomanSt
źródło
źródło
*
).:
, co jest wystarczająco złe. Przydatne jest nazywanie dokumentów po ich zawartości, a jeśli nazwa artykułu kończy się pytaniem, nazwa pliku też powinna.Odpowiedzi:
Spójrz na nazwę Glindra i detox .
Narzędzia do plików Glindra można zainstalować w systemie Windows lub Linux. Przykłady czyszczenia nazw plików w systemie Windows:
Maps prowadzące myślniki (łączniki) do podkreślenia.
Zwija spacje.
Odwzorowuje problematyczne znaki, takie jak * ?: [] "<> | () {}, do podkreślenia.
Wykonuje te same operacje czyszczenia co -safe, a dodatkowo:
Odwzorowuje wszystkie 8-bitowe znaki z górnej połowy alfabetu łacińskiego 1 na rozsądne 7-bitowe znaki zastępcze.
Odwzorowuje znaki pojedynczego cudzysłowu na podkreślenie.
Źródło: Naprawa nazw plików Unix / Linux / POSIX: Znaki kontrolne (takie jak Newline), Wiodące myślniki i inne problemy
źródło
G:\spc>rena.exe -safe -portable *.txt
wyniki[FATAL-ERROR] Filename syntax error: aa:a.txt
rena '*.*' -portable
, a jeśli chcesz, aby rekurencyjne, użyj czegoś takiego jakrena '***/*.*' -portable
na Linuksie. Uważam, że zmiana nazwy powinna nastąpić w systemie Linux, a nie w systemie Windows.Spróbuj Recuva .
Jest to jedyne narzędzie systemu Windows, które znalazłem, które obsługuje nazwy plików inne niż Windows.
Włącz skanowanie w poszukiwaniu nieusuniętych plików (w celu odzyskiwania z uszkodzonych lub sformatowanych dysków) i przeskanuj swój folder. Podczas przywracania włącz opcję Przywróć strukturę folderów . Recuva skutecznie „skopiuje” cały katalog do innej lokalizacji, „santitizing” nieprzyjazne nazwy plików.
źródło
Nie będąc w systemie Linux i bez testowania czegokolwiek, wierzę, że można użyć jedno-liniowych, takich jak te poniżej.
Aby zmienić jeden znak:
I na koniec, aby usunąć wszystkie znaki niealfanumeryczne:
źródło
<>:"/\|?*
Jeśli pliki znajdują się już na woluminie NTFS, wydaje się, że uruchomienie programu chkdisk w systemie Windows „rozwiązuje” problem. Niestety wydaje się, że robi to poprzez usunięcie szkodliwych plików.
źródło
Udało mi się to dzięki kombinacji dwóch pierwszych odpowiedzi plus pyRenamer (GUI). Pod Linuksem użyłem pyRenamer do zwinięcia spacji w nazwach folderów (katalogów) - zastępując spację niczym - aby inne programy (zmiana nazwy Glindra) działały rekurencyjnie (można było wstawić podkreślenia). Z plików wyjąłem także znaki lub słowa dopuszczalne w systemie Windows, aby zaoszczędzić miejsce, i podobnie zwinięte spacje w nazwach plików. Następnie uruchomiłem Renę, aby usunąć znaki inne niż Windows, zapisane na dysku flash, a następnie użyłem Recuva do „przywrócenia” folderu w systemie Windows. Recuva wskazuje, czy ścieżka do pliku jest za długa (i usuwa również znaki inne niż Windows). Nie znalazłem jeszcze narzędzia, które sprawdza ścieżkę nazw plików, aby sprawdzić, czy są one poniżej maksymalnego limitu systemu Windows wynoszącego 255 (lub powiedz 240, aby dać trochę swobody).
źródło