Mam utwór, którego system Windows nie może odtworzyć, ponieważ w nazwie pliku znajduje się znak zapytania.
"Where Have All the Cowboys Gone?.ogg" // as an example
Próbuję więc zmienić nazwę i Windows narzeka, czy wypróbuję to w Eksploratorze, czy z wiersza poleceń.
Wystąpił błąd podczas próby skopiowania, zmiany nazwy lub przeniesienia:
Nazwa pliku, nazwa katalogu lub składnia etykiety woluminu jest niepoprawna
Czy istnieje sposób wymuszenia zmiany nazwy w tym przypadku w systemie Windows ?
Aktualizacja
Będę miał oko na to pytanie, ale po 13 odpowiedziach i wielu próbach (poza rozwiązaniami innych firm) wydaje się, że Windows nie może tego zrobić (a przynajmniej moje okna nie, żadnych krótkich nazw). Tak więc akceptuję odpowiedź, która była moim pierwotnym rozwiązaniem przy użyciu Linuksa. Byłoby miło, gdyby Windows jakoś sobie z tym poradził, więc nie przestawaj tylko dlatego, że zaakceptowałem tę odpowiedź, pytanie wciąż pozostaje!
źródło
Odpowiedzi:
Weź Linux-CD na żywo i użyj go.
źródło
Czy próbowałeś użyć krótkiej wersji nazwy pliku? Na przykład
Jeśli jest to jedyny plik w bieżącym folderze, który zaczyna się od kilku pierwszych liter, użyj pierwszych 6 liter nazwy (ignorując spacje), a następnie tyldy (~), a następnie 1.
źródło
Jak zobaczysz, wynik był taki, że chkdsk faktycznie usunął dla mnie pliki. Tak więc, jeśli chcesz zachować pliki, nie wiem, co robić, ale to na pewno pozbędzie się plików.
Wyniki / Dziennik Cmd:
źródło
chkdsk
czasami naprawi nieprawidłowe nazwy plików. Zostanie wyświetlony komunikat o usunięciu pliku, ponieważ wszystkie nazwy plików są nieprawidłowe, a następnie odzyskaniu utraconego pliku. Następnie możesz znaleźć plik wC:\found.000\file0000.chk
. Jest to skuteczny sposób na usunięcie plików powodujących problemy, ale nie jest to najlepszy sposób, jeśli chcesz je zachować.źródło
\found.000
.Sposób, w jaki usunąłem uparty plik, był przez otwarcie 7zip, znalezienie pliku i zmianę nazwy pliku za pomocą 7zip. Mój był utworem, który miał spację na końcu pliku.
źródło
Spróbuj określić ścieżkę UNC (zobacz Nazewnictwo plików, ścieżek i przestrzeni nazw ). To omija wszelkie ograniczenia. Zrobiłbyś to przy użyciu
\\?\
składni.Przykład: jeśli plik znajdował się na pulpicie (a dysk systemu Windows to C :), możesz to zrobić
Uwaga: W tej składni nie można używać ścieżek względnych; musisz podać pełną ścieżkę. I to nie działa z
ren
poleceniem, ale działa zcopy
imove
.źródło
\\?\
po prostu omija przetwarzanie ścieżki pliku w bibliotece wykonawczej trybu użytkownika. Nie pozwala na otwieranie nazw plików zawierających 5 znaków wieloznacznych (*? "<>), Innych znaków zastrzeżonych (/ |: \) lub znaków kontrolnych\n
. Nie pytaj mnie, jak to utworzyłem (cóż, próbuję sprawdzić, czy możesz utworzyć wiele plików o identycznej nazwie w systemie Windows). Explorer, FreeCommander nie mógł go usunąć, ale\\?\C:\...
może.Użyj Recuva . Jest przeznaczony przede wszystkim do odzyskiwania skasowanych plików, ale ma również opcję włączenia plików nieskasowanych podczas skanowania.
Po uruchomieniu Recuva odrzuć kreatora i wybierz właściwy dysk. Następnie przejdź do Opcje, znajdź i zaznacz opcję „Skanuj w poszukiwaniu nieusuniętych plików” i uruchom skanowanie. Po chwili pokaże wszystkie pliki na dysku (usunięte lub nie). Znajdź swoje pliki z nieprawidłowymi nazwami (nazwy są już ustawione w widoku), wybierz je, kliknij prawym przyciskiem myszy i gdzieś zapisz („odzyskaj”).
Właśnie to zrobiłem (w systemie Windows XP).
źródło
/n
którego 7-zip nie mógł manipulować.Narzędzie Microsoft DISKEDIT.EXE to narzędzie niskiego poziomu do bezpośredniego odczytu i zapisu surowych danych na dysku. Powinieneś być w stanie załadować klaster zawierający pozycję katalogu dla tego pliku i po prostu zmienić obrażające „?” charakteru do czegoś nieszkodliwego i zapisz go z powrotem na dysk.
Rozumiem, że narzędzie Microsoft Diskedit (nie narzędzie Norton Utilities o tej samej nazwie, które dotyczy tylko woluminów FAT) było ostatnio widoczne w systemie Windows 2000 SP4. Istnieje jednak link do niego, który można znaleźć tutaj .
Aby zlokalizować odpowiedni klaster, możesz pobrać wersję próbną DiskExplorer dla NTFS .
Zaczynasz od Plik-> Dysk ..., aby otworzyć dysk zawierający ten zły plik. Wybierz Idź-> Katalog główny, aby uzyskać widok katalogu. Przejdź do katalogu zawierającego zły plik, korzystając z linków MFT #. Kiedy tam dotrzesz, u góry okna pojawi się napis „MFT # x12345 DIR:„ dirname ”, ... bla bla bla ... począwszy od klastra x9302AE , ... bla bla bla
Teraz przejdź do Microsoft Diskedit. Najpierw wykonaj Plik-> Otwórz ... i określ nazwę woluminu C: (jeśli plik znajduje się na dysku C:). Pozostaw nazwę pliku woluminu pustą. Weź ten początkowy numer klastra i wprowadź go do diskedit w Odczyt-> Klastry NTFS ...-> Początkowy klaster (wprowadź go jako liczbę szesnastkową).
Teraz użyj klawiszy strzałek, aby przewinąć w dół do złej nazwy pliku. Jest w trybie Unicode, więc będziesz szukać czegoś takiego jak „Where .Have .All. The .Cowboys .Gone? ... ogg” Ustaw kursor na złym znaku „3F” i wpisz coś bezpiecznego, na przykład 5F (' _ '). Wybierz Write-> It, aby zapisać go z powrotem na dysk.
Jest jeszcze jedno miejsce do trafienia (nie jestem pewien, czy jedno lub oba są potrzebne). Teraz z powrotem w DiskExplorer, kliknij Mft # dla uszkodzonego pliku. Otrzymasz ekran z drzewem po lewej stronie z napisem „struktury”. Kliknij „Atrybuty” w drzewie. Wyświetli się lista atrybutów, z których jednym będzie około 30 $ ... $ FILE_NAME. Zatem 30 $ ma nazwę pliku. Kliknij węzeł Body poniżej węzła 30 USD w drzewie Struktury. Wybierz menu Widok-> jako Hex. Kilka linii w dół powinieneś zobaczyć nazwę pliku Where .Have .. itd. Po lewej stronie ekranu zobaczysz kolumnę Sector, która pokazuje, na który sektor dysku patrzysz.
Z powrotem na dysku. Wykonaj Read-> Sectors ... i wprowadź numer sektora z DiskExplorer. Tak jak poprzednio, przewiń w dół i zamień znak „3F” na taki sam znak, jak powyżej. Wybierz Write-> It, aby zapisać na dysk.
Zrobiłem to wszystko, a narzędzia mówią mi, że zmieniłem postać, ale odkrywca nie. Katalog musi gdzieś być buforowany. Po ponownym uruchomieniu zmiana staje się widoczna.
źródło
Spróbuj użyć narzędzia innej firmy, takiego jak Ken Kename :
lub Zmień nazwę Mistrza .
Oto lista narzędzi do zmiany nazw plików .
Sam bym je przetestował, ale używam 64-bitowego systemu Windows Vista; obsługa plików może być inna.
Jeśli te narzędzia zawiodą, możesz spróbować Windows PowerShell . Zobacz Zmiana nazw plików na blogu Windows PowerShell .
źródło
Czy próbowałeś przenieść go do pliku o właściwej nazwie?
źródło
copy
poleceniem.?
lub*
lub<
lub>
lub:
w imieniu icopy
-ing po prostu pracował? (Właśnie tego spróbowałem i nie zaskoczyło mnie to.)copy
poleceniem. Czy spróbowałeś takżecygwin
polecenia bashmv
?"
,|
,/
i oczywiście odwrotny ukośnik (co nie wydaje się wchodzić tutaj :))) są w inną klasę problematycznych znaków ( zarezerwowane ), i obawiam się, że anicopy
polecenie, ani nieCygwin
potrafię zmienić ich nazwy. (Najprawdopodobniej miałeś różne znaki w problematycznej nazwie pliku.)a
.W
cmd.exe
przejść do nowego katalogu i wpisz następujące polecenie:To dla uproszczenia. Następnie możesz zmienić nazwę w XP, jak chcesz, jak
1.ogg
chceszWhere Have All the Cowboys Gone.ogg
.ogg
był tylko przykładem, rozszerzenie może być dowolne.źródło
Jeśli masz zainstalowany Cygwin, powinien on być w stanie zająć się plikiem. Właśnie miałem ten problem i użycie rm z Cygwina w powłoce bash było w stanie usunąć plik w porządku, gdy żadna aplikacja Windows, w tym Explorer, w tym próba użycia pliku UNC z plikiem CMD.exe nie pomogła.
Wyobrażam sobie, że mv zrobi to na wypadek, gdybyś chciał zachować plik.
Konfiguracja Cygwin na boso zajmuje tylko kilka minut, a ja i tak ją utrzymuję, ponieważ jest tak wiele dobrych narzędzi. Jest to łatwiejsze niż uruchomienie Linuksa, nawet przy użyciu płyty CD na żywo.
źródło
\\?\
działałby również w tym przypadku - przy prawidłowym użyciu z pełną ścieżką w Unicode. Pomija kod biblioteki wykonawczej trybu użytkownika, który emuluje dziwaczną starą regułę MS-DOS z lat 80., która ignoruje spacje na końcu nazw. Problem nieprawidłowych i zarezerwowanych znaków nie może być rozwiązany w ten sposób.Zakładając, że dany wolumin to FAT32 lub NTFS, spróbuj uruchomić program chkdsk. To powinno wyczyścić „uszkodzone” pozycje katalogu, co w tym przypadku oznaczałoby usunięcie? Jeśli jest to wolumin rozruchowy, może być konieczne ponowne uruchomienie komputera.
źródło
:
a zrobienie tego sprawiło, że katalog zniknął. NIE rób tego.chkdsk
przeniosłem zawartość folderu w katalogu głównymTo powinno zadziałać (przynajmniej dla mnie):
To polecenie wyświetli coś podobnego do tego:
Właśnie
WH5E97~1
tego szukasz!(Uwaga: taki kod jest całkowicie wymyślony, ale powinien być podobny do tego, który znajdziesz)
Wiedząc o tym, proste
powinien załatwić sprawę.
Mam nadzieję, że to pomoże.
źródło
dir t97*
zwraca zarówno pliki, ponieważ wieloznaczny gwiazdka odpowiada plikt.txt2
dot97.txt
używając jego skrócona nazwa mapyT97B4~1.TXT
czy próbowałeś:
może zadziałać.
źródło
Wypróbuj wieloznaczny w ruchu -
To prawdopodobnie najlepszy wybór, o ile istnieje tylko jeden plik pasujący do symbolu wieloznacznego.
źródło
przeciągnij i upuść do nowego folderu, przejdź w wierszu polecenia do tego folderu i wpisz
źródło
Spróbuj cygwin, aby zmienić nazwę pliku:
polecenie będzie:
mv filename?.ogg filename.ogg
źródło
Większość wewnętrznych poleceń Microsoft jest kontrolowana przez obecność
explorer.exe
.Otwórz Menedżera zadań i sprawdź listę bieżących aktywnych procesów. Znajdziesz
explorer.exe
wśród nich. Kliknij prawym przyciskiem myszy i zakończ / zatrzymaj / zamknijexplorer.exe
. Nie zamykaj jeszcze Menedżera zadań. Teraz przejdź do obraźliwego pliku za pomocą dodatkowego menedżera plików i spróbuj usunąć lub zmienić nazwę za pomocą symboli wieloznacznych. Prawdopodobnie odniesie sukces.Teraz wróć do okna Menedżera zadań i kliknij prawym przyciskiem myszy górny wiersz z napisem Aplikacje, a następnie wybierz dolny przycisk z napisem Nowe zadanie. Enter
explorer.exe
. Eksplorator pojawia się ponownie i nie ma już pliku ofensywnego.źródło
Interfejs GUI WinRAR pozwoli Ci zmienić nazwę plików bez uprzedniego spakowania ich do archiwum. Przetestowałem to w systemie Windows 8.1 na bardzo długiej nazwie pliku. Działa jak urok.
źródło
Jeśli masz WinRAR, spakuj go na WinRAR, zmień nazwę na WinRAR, rozpakuj.
Możesz też spróbować użyć VBScript, wziąć następny skrypt i zapisać go w pliku z rozszerzeniem .vbs .
źródło
Miałem również podobny problem z folderem. Nazwa folderu to „.min”. co zwykle nie jest dozwolone.
Zmień nazwę niedozwoloną (kliknij, aby zobaczyć obraz)
Dzięki Winrar udało mi się to rozwiązać. To co zrobiłem było
Dodaj do archiwum ... (kliknij, aby zobaczyć obraz)
Jest to dozwolone, ponieważ system Windows tak naprawdę nie sprawdza, co znajduje się w pliku .rar. Jak tylko zmienisz nazwę, wyodrębnij plik i gotowe.
Mam nadzieję, że to pomoże.
źródło
10:2
.Użyj cmd.exe w tym katalogu z symbolami wieloznacznymi. Na przykład:
źródło
Menedżer plików 7-Zip (7-zip.org) zmieni nazwy plików i katalogów, których XP nie może. Po prostu użyłem go do wyodrębnienia pliku .tar i zmiany nazwy dołączonego, nielegalnie nazwanego pliku .chm. Nie wymaga LiveCD.
Tschüß!
źródło
Miałem podobny problem z 2 zagnieżdżonymi folderami z podfolderami. Nie mogłem zmienić nazwy ani usunąć niektórych plików (próbowałem na wiele sposobów). W końcu znalazłem rozwiązanie: Teracopy.
Zainstaluj go, kliknij prawym przyciskiem myszy folder lub plik i wybierz teracopy. Teracopy otworzy się, a następnie kliknij
delete
lubrename
. Zmieni nazwę lub usunie ją.Możesz spróbować.
źródło
Wpadłem na tę samą sytuację.
Googling po okolicy Dowiedziałem się, że nie ma natywnego rozwiązania.
... i używam jako powłoki JCCoft TCC, który również nie mógł obsłużyć tych przeklętych plików.
Ale dowiedziałem się również, że Cedrick Collomb's Unlocker ( http://www.emptyloop.com/unlocker/ ) jest w stanie sobie z tym poradzić.
I miałem to w mojej konfiguracji. Również bardzo go polecam.
Cóż, przynajmniej to rozwiązanie nie wymaga opuszczania środowiska Windows ...
źródło
Naprawiłem taki plik FLAC za pomocą podstawowego polecenia Winampa, używając okna eksploratora tego programu. Kiedy poszedłem do folderu, miałem opcję zmiany nazwy, w przeciwieństwie do Eksploratora.
źródło
Spotkałem podobną sytuację. Żadne z opublikowanych rozwiązań nie działało dla mnie, ale w końcu znalazłem łatwe rozwiązanie:
Po prostu skopiowałem plik (tak, kopiowanie nadal było dla mnie możliwe) na pamięć USB, przemianowałem go tam i umieściłem z powrotem! Pozostawiam innym wyjaśnienie, dlaczego to zadziałało.
źródło
To nie jest bezpośrednia odpowiedź (jak w przypadku, gdy Windows może zmienić nazwę pliku), ale to działa dla mnie. Nielegalne pliki są zwykle na dysku zewnętrznym, więc podłączam dysk zewnętrzny do mojego tabletu z Androidem . Pozwala mi to zmienić nazwę pliku, który następnie może zostać odczytany przez system Windows. Dotyczy to specjalnych znaków, ale zwykle pojawia się problem z nazwą pliku rozpoczynającą się lub kończącą spacją lub kończącą się na „.”
Wypróbowałem jedno z zewnętrznych narzędzi FlexRenamer, ale nadal ma to problem z powyższym.
źródło
W większości przypadków ta odpowiedź jest bezużyteczna .
Oszukały mnie nazwy plików zawierające znaki, które są reprezentowane jako znaki zapytania, podczas gdy w rzeczywistości są to tylko znaki, których domyślnie nie można / nie wyświetla domyślna liczba znaków M $.
Czy powinienem usunąć ten post? Nadal może pomóc niektórym ludziom ...
Spróbuj użyć wbudowanego polecenia tab-cmd.exe.
dir /x
nie pomaga (NTFS został utworzony bez obsługi krótkich nazw plików):Próba zmiany nazwy przez wpisanie / kopiowanie i wklejanie nazwy nie działa:
Aby to zadziałało, musisz użyć tabulatora . Po prostu przejdź do odpowiedniego katalogu w powłoce cmd, wpisz
ren
, naciśnij klawisz tabulator i naciskaj go, aż pojawi się „poprawna” nazwa:następnie wpisz resztę i naciśnij enter:
Zostaniesz nagrodzony za to:
To trochę nudne, ale do tej pory zawsze działało dla mnie z plikami i katalogami (Windows 7 i 8).
Śmieszna uwaga:
ren
Komendy w 2. i 3. są identyczne, ale nie zadziała bez użycia tabulacji. I nawet jeśli używałeś uzupełniania tabulatorami, to nie będzie działać, gdy tylko zmienisz nazwę poren
(np. Usuniesz i dodasz znak zapytania).źródło