Jak naprawić problem „Nazwa pliku jest zbyt długa” w systemie Windows


Jeśli kiedykolwiek widziałeś ten problem, prawdopodobnie był to dla Ciebie prosty sposób. Jeśli widziałeś ten błąd więcej niż dwa razy, wiesz również, że czasem może to być skomplikowany problem.

Miejmy nadzieję, że spotkasz się tylko z łatwą odmianą poprawek, ale przygotujemy cię również na mniej łatwe, gwarantowane również poprawki.

Dlaczego długość nazwy pliku jest nawet problemem w systemie Windows?

Długa historia długości nazw plików stanowi problem dla systemów operacyjnych takich jak Windows. Był czas, gdy nie można było mieć nazw plików dłuższych niż 8 znaków plus 3-znakowe rozszerzenie pliku. Najlepsze, co możesz zrobić, to coś w rodzaju myresume.doc. To było ograniczenie obowiązujące przy projektowaniu systemu plików.

Wraz z pojawieniem się nowych wersji systemu Windows sytuacja się poprawiła. Przeszliśmy ze starego, ograniczonego systemu plików na coś, co nazywa się New Technology File System (NTFS). NTFS doprowadził nas do punktu, w którym nazwa pliku może mieć 255 znaków, a długość ścieżki pliku może potencjalnie wzrosnąć do 32 767 znaków. Więc jak możemy mieć zbyt długie nazwy plików?

Windows ma tak zwane zmienne systemowe. Są to zmienne, których działanie polega na systemie Windows, ponieważ system Windows zawsze będzie wiedział, co oznaczają zmienne i gdzie się znajdują, nawet gdy przenosimy bity i bajty w dowolnym miejscu. Zmienna systemowa MAX_PATHto ta, która ogranicza nazwy plików i ścieżki do plików poniżej 260 znaków.

Sądząc, że zmienna jest zmienna, moglibyśmy ją zmienić. Nie powinniśmy. To byłoby jak wyciągnięcie nitki ze swetra. Gdy tylko jedna zmienna systemowa ulegnie zmianie, inne zmienne systemowe i zależne od nich komponenty zaczną się rozplątywać.

In_content_1 all: [300x250] / dfp: [640x360]->

Jak to naprawić?

Łatwa poprawka

Jeśli masz szczęście, otrzymasz błąd i dokładnie wiedzieć, jaka nazwa pliku powoduje problem. Lub przynajmniej gdzie znaleźć plik. Może masz nazwę pliku, która wygląda mniej więcej tak:

C:\User\guymc\Documents\My Resumesresumewithanamesolongthatitcausesproblemsandbecomespartofsomeguysarticleonthewebhowdoyoulikemenow.docx

To oczywiste, kto jest przestępcą w tym przypadku. Znajdź plik w Eksploratorze Windowslub Eksploratorze plików, jak nazywa się w Windows 10, kliknij go raz, naciśnij F2, aby zmienić jego nazwę, i zmień tę głupią nazwę pliku na coś bardziej rozsądnego. Problem rozwiązany.

Mniej łatwe poprawki

Naprawienie tego problemu nie zawsze jest takie łatwe. Czasami zmiana nazw plików lub katalogów może być niemożliwa z jakiegokolwiek powodu.

Następujące rozwiązania pomogą ci rozwiązać problem. Nie są trudne.

Przenieś, usuń lub skopiuj pliki lub katalogi za pomocą programu PowerShell

Czasami pojawia się błąd podczas próby przeniesienia, usunięcia lub skopiowania katalogów, w których liczba znaków w ścieżce pliku jest większa niż 260.

Pamiętaj, że katalog słów i folder są wymienne. Będziemy używać „katalogu” do przodu. Do plików można również użyć następujących poleceń cmdlet programu PowerShell.

Być może ścieżka do pliku wygląda mniej więcej tak:

C:\Users\guymc\Documents\This\Is\Exactly\The\Precise\Directory\Path\That\I\Need\To\Have\To\Keep\My\Files\Sorted\In\A\Manner\That\Makes\Sense\To\Me\So\Lets\Pretend\This\Is\An\Actual\Filepath\That\You\Might\Also\Have\On\Your\Windows\Computer\And\Not\Over\Think\It\Document.docx

Ta ścieżka do pliku ma 280 znaków. Nie możemy więc skopiować katalogu do innego miejsca za pomocą zwykłej metody kopiuj-wklej. Otrzymujemy błąd Zbyt długa ścieżka docelowa.

Załóżmy, że z jakiegokolwiek powodu nie możemy zmienić nazw katalogów, w których plik jest zagnieżdżony. Co robimy?

Otwórz PowerShell. Jeśli jeszcze nie korzystałeś z PowerShell, skorzystaj z naszego artykułu Korzystanie z PowerShell dla użytkowników domowych - przewodnik dla początkujących. Możesz jednak robić kolejne kroki bez czytania artykułu.

Gdy otworzy się PowerShell, będziesz w katalogu głównym katalogu użytkownika. Postępuj zgodnie z założeniem, że C: \ Users \ guymcjest twoim katalogiem użytkownika.

Katalog o nazwie Toznajduje się w Dokumentach . Aby przejść do katalogu Dokumenty, używamy polecenia DOS Dokumenty cd.

You ' Zobaczysz szybką zmianę na C: \ Users \ guymc \ Documents. Dobre. Pracujemy bliżej katalogów, które ułatwią sprawę.

Kopiuj katalog za pomocą opcji Kopiuj element

Chcemy skopiować katalog Toi jego zawartość do ThatNewFolder. Użyjmy polecenia cmdlet PowerShell Kopiuj elementz parametrami -Docelowaniei -Recurse.

-Destination informuje PowerShell, gdzie ma być kopia. -Recurse mówi PowerShellowi, aby skopiował wszystkie elementy do miejsca docelowego. Kopiowanie pozostawia oryginały w miejscu, w którym się znajdują i czyni wszystkie nowe w miejscu docelowym.

Kopiuj element to-Miejsce docelowe ThatNewFolder -Recurse

Przenieś katalog za pomocą Przenieś element

Powiedzmy, że chcemy przenieść katalog To oraz wszystkie zawarte w nim katalogi i pliki do ThatNewFolder. Przeniesienie nie pozostawia oryginału na miejscu.

Możemy użyć polecenia cmdlet PowerShell Move-Itemz parametrami -Pathi -Destination. -Path określa element, który chcemy przenieść, a -Destination mówi PowerShell, gdzie chcemy.

Polecenie cmdlet umieści To w ThatNewFolder. Przeniesie także wszystko, co znajduje się w tym katalogu. Element Move może być używany do przenoszenia plików lub katalogów i działa niezależnie od ścieżki pliku lub długości pliku.

Przenieś element-Ścieżka do tego -Destination ThatNewFolder

Aby upewnić się, że działało, użyj płyty CD ThatNewFolderpolecenie, aby przejść do ThatNewFolder. Następnie użyj polecenia dir, aby wyświetlić listę katalogów w ThatNewFolder. Zobaczysz tam ten katalog.

Usuń katalog za pomocą opcji Usuń element

Jeśli chcemy usunąć katalog Toi wszystko w nim, używamy Usuń -Itempolecenie cmdlet.

Polecenie cmdlet Remove-Item ma wbudowane zabezpieczenia, które utrudniają usunięcie katalogu zawierającego rzeczy w nim zawarte. W naszym przykładzie wiemy, że chcemy wszystko usunąć, więc użyjemy parametrów -Recurse, aby usunąć wszystko wewnątrz, a -Force, aby to zrobić bez pytając nas, czy jesteśmy pewni co do każdego elementu w środku.

Ostrzegamy! Odzyskanie wszystkiego usuniętego w ten sposób byłoby niezwykle trudne. Możesz wypróbować metody w  Jak odzyskać przypadkowo usunięte pliki, ale nie oczekuj zbyt wiele.

Usuń- Element This -Recurse -Force

Możesz ponownie użyć polecenia dir, aby upewnić się, że go nie ma.

Ustaw system Windows 10 na akceptowanie długich ścieżek plików

Jeśli wiesz, że będziesz wielokrotnie używać długich ścieżek plików i długich nazw plików, łatwiej sprawić, aby system Windows działał dla Ciebie. Nie ma sensu używać PowerShell do codziennej pracy.

Możemy to zrobić na dwa sposoby. Jeden jest przeznaczony dla użytkowników systemu Windows 10 Home, a drugi dla użytkowników systemu Windows 10 Pro lub Enterprise. Te metody mogą działać w systemie Windows 8.1 lub wcześniejszym, ale nie możemy tego zagwarantować.

Uczyń Windows 10 Home akceptacją długich ścieżek plików

Aby Windows 10 Home akceptował długie ścieżki plików, potrzebujemy aby otworzyć Edytor rejestru. Jeśli wcześniej nie pracowałeś w Edytorze rejestru, zachowaj ostrożność. Przypadkowe usunięcie lub zmiana rzeczy w tym miejscu może całkowicie uniemożliwić działanie systemu Windows.

Zawsze wykonuj kopię zapasową rejestru przed wprowadzeniem jakichkolwiek zmian. Dowiedz się wszystkiego, co musisz o tym wiedzieć w naszym  Ostateczny przewodnik tworzenia kopii zapasowych i przywracania rejestru systemu Windows.

Po otwarciu Edytora rejestru i utworzeniu kopii zapasowej przejdź do lokalizacji HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ FileSystemi znajdź klucz LongPathsEnabled.

Kliknij dwukrotnie LongPathsEnabled. W polu Dane wartości:upewnij się, że znajduje się tam liczba 1. Kliknij OK, aby zatwierdzić zmianę.

Wyjdź z Edytora rejestru i powinieneś być w stanie pracować z szalonymi długimi ścieżkami plików.

Spraw, aby Windows 10 Pro lub Enterprise akceptował długie ścieżki plików

Aby zezwolić Windows 10 Pro lub Enterprise, aby użyć długich ścieżek plików, użyjemy Edytora zasad grupy. Jest to narzędzie, które pozwala nam ustalać zasady działania systemu Windows na poziomie komputera i użytkownika.

Mamy kilka artykułów na temat korzystania z zasad grupy do robienia rzeczy takich jak  wyłączanie lub włączanie opcji Internet Explorera lub  dodawanie wiadomości do ekranu logowania.

Otwórz Edytor zasad grupy, przechodząc do menu Starti wpisując gpedit. Najlepszym wynikiem powinna być Edytuj zasady grupy. Kliknij dwukrotnie.

Po otwarciu Edytora zasad grupy przejdź do Konfiguracja komputera>Szablony administracyjne>System>System plików. Tam zobaczysz zasadę Włącz długie ścieżki Win32.

Kliknij dwukrotnie, aby edytować ustawienie zasad. Zmień go z Wyłączonena Włączone, a następnie kliknij przycisk OK, aby zatwierdzić zmianę.

Polityka może nie zacząć obowiązywać od razu. Możesz jednak  wymuś aktualizację zasad grupy.

To wszystko

Istnieją inne sposoby obejścia długich nazw plików i ścieżek plików, ale to, przez co przeszliśmy, to najprostsze i najbardziej skuteczne metody.

Fix problem : Plik jest za duży dla docelowego systemu plików. Tutorial pl

Powiązane posty:


17.07.2019