Nie można usunąć pliku; nazwa jest za długa

3

Pytanie zostało zadane, ale niestety żadna z sugestii nie zadziałała.

Oto sytuacja - plik jest synchronizowany z folderem lokalnym na moim komputerze w folderze mój / users z Dysku Google. To jest pdf (wygląda jak gdzieś zapisany rachunek). Nazwa ma> 255 znaków, co powoduje wyłączenie systemu Windows.

Czego plik nie zrobi

  • otwarty
  • Kopiuj
  • Przemianować
  • Ruszaj się
  • Pasta
  • pokaż właściwości

Właściwie nie dostałem pliku, który zapewniałby jakąkolwiek odpowiedź poza tym samym błędem.

Wypróbowane rozwiązania:

  • dir /x - brak nazwy skróconej, po prostu powtarza zwykłą nazwę.
  • Korzystanie z FileBoss, Explorer ++, 7zip
  • rmdir /S /Q <dir> tak naprawdę nie działa, ponieważ jest w moim folderze użytkownika ...

Jeśli ktoś ma pomysł, by spróbować, byłbym na to otwarty.

Edytuj - w tym przypadku sama nazwa pliku ma więcej niż 255 znaków. Zmiana katalogów, w których jest zagnieżdżony, nie wpłynie na problem, ponieważ nie ma problemu ze ścieżką pliku. (Ten problem sam w sobie eliminuje wiele innych rozwiązań).

iamwpj
źródło
1
Czy wypróbowałeś wszystkie sugerowane rozwiązania? Wymieniłeś trzy . Z ponad tuzina. Na przykład ścieżki UNC powinny działać.
Bob
Piszesz, próbowałeś zmienić nazwę; próbowałeś również zmienić nazwę wieloznacznika? ren * .ex1 short.ex2 [Zakładam, że popełniłeś literówkę w swoim pytaniu: „<255” zamiast „> 255”]
Jan Doggen
Jeśli jesteś w stanie napisać mały program do zmiany nazwy, możesz wypróbować sztuczkę \\? \ Wymienioną w msdn.microsoft.com/en-us/library/windows/desktop/…
Jan Doggen
Możliwy duplikat superuser.com/questions/489850/… Tutaj sugeruje „zmiana nazwy zawierających nazwy folderów”, aby ostatecznie pełna specyfikacja pliku była krótsza niż 255
Jan Doggen
Nie wspominając już o wielu wynikach Googling dla „zmień nazwę okna na długą nazwę pliku 255” ...
Jan Doggen

Odpowiedzi:

2

Uruchomiłbym dysk na Linux Live Disc , zamontował dysk Windows i usunął go za pomocą Linux / Unix.

Myślę, że głównymi poleceniami, których potrzebujesz, są:

mount -t ntfs-3g /dev/sdX# /mnt
cd /mnt/Users/You
rm -f further/loc/away.filename

(Uwaga: może być konieczne uruchomienie w fdisk -lcelu zlokalizowania partycji Windows)

i to powinno cię tam doprowadzić. W pewnym momencie musiałem to zrobić.

nerdwaller
źródło
To zadziałało dla mnie. Dzięki za sugestię, uruchomiłem PartedMagic i nie miałem problemów. Jak dotąd jest to najłatwiejsze rozwiązanie.
iamwpj
2

W systemie Windows wystarczy użyć menedżera plików 7z lub innej aplikacji eksploratora (podobnej do używanej), która do obsługi plików używa wersji interfejsu API w Unicode. Duplikaty i dodatkowe informacje:

( 1 ) Tło techniczne problemu: limit MAX_PATH (patrz także (4)).

( 2 ) Jak pokonać ten limit na poziomie programisty.

( 3 ) Jak pokonać ten limit na poziomie użytkownika.

Należy pamiętać, że (3) jest TYLKO obejściem. W żaden sposób nie nadaje się do programowania. Najgorsze jest to, że faceci z Microsoftu miksują interfejsy API, które mogą doprowadzić aplikację w pełni zgodną ze ścieżką UNC z powrotem do 260-MaxPath-StoneAge z powodu tylko jednego wywołania niekompatybilnego API (por. (2)). Explorer i inne produkty (w tym cmd & powershell) firmy Microsoft nie może przezwyciężyć ten problem, ze względu na swoją historię (z głosowań pod linkami do eliminacji limit albo są ignorowane lub odrzucona).

W zależności od przypadku użycia i wersji limit wydaje się być różny. Eksplorator Windows 8 wydaje się być w stanie obsłużyć około 4 razy dłuższe ścieżki ( 4 ), podczas gdy począwszy od systemu Windows 7, najdłuższa ścieżka pliku, którą można przenieść do Kosza, zmniejszyła się z 259 do 215 ( 5 ). Dlaczego programiści zaczynający od zera w systemie Windows NT nie wdrożyli dynamicznego przydzielania, pozostaje zagadką. Podejście do dzisiejszej sytuacji z wykorzystaniem API nie-Unicode opisano tutaj ( kopiowanie ).

Inne tematy związane z programowaniem i ścieżkami UNC w sieci SO:

6 ścieżek UNC w Javie i jego realizacja na poziomie JVM.

7 i 8 ścieżek UNC w sieci.

Przypadki, które spotkałem, gdzie ten limit jest naprawdę denerwujący:

  • Organizowanie hierarchii kodów źródłowych: nodeJS

  • Tworzenie kopii zapasowych plików w głęboko zagnieżdżonych strukturach folderów

  • Konwencja nazywania dokumentów (np. Artykuły z długim opisem - streszczenie, autorzy, tytuł, DOI - jako nazwa szybkiego wyszukiwania i znajdowania)

  • Udostępnianie plików między Linuksem (który nie ma tego limitu) a Windows

dkeck
źródło
0

Możesz spróbować przejąć plik na własność i sprawdzić, czy możesz go usunąć. Możesz to zrobić, klikając plik prawym przyciskiem myszy: Właściwości -> Bezpieczeństwo -> Zaawansowane -> Właściciel -> Edytuj, a następnie zmień właściciela na swoją nazwę użytkownika (lub grupę Administratorzy).

Aby uzyskać więcej informacji, sprawdź to .

Muneeb M.
źródło
Dzięki, ale nie mogę wyświetlić właściwości pliku.
iamwpj
@iamwpj Jaki błąd występuje podczas próby wyświetlenia właściwości tego pliku?
Muneeb M
Brak, nie ma opcji przeglądania właściwości. Plik jest całkowicie niedostępny.
iamwpj
0

Oto, co działało dla mnie w podobnej sytuacji:

Najpierw próbował przejąć na własność:

takeown /r /d y /f my_folder

To nie działało w przypadku niektórych plików. Potem użyłem cygwina, który już zainstalowałem i po prostu uruchomiłem:

rm -rf path/to/my_folder

Voila, nie ma.

johv
źródło