Jméno kontaktu je příliš dlouhé, co mám dělat? Jak odstranit soubor nebo složku s dlouhým názvem, pokud vám to systém Windows neumožňuje

Zde je příklad struktury složek, kterou jsem nazval „velká panenka“:

Jak vidíte, na jednotce „D“ (Data) je složka zdrojového videa, v ní je složka „Filmy“, v ní je „Vše, co potřebujete ke sledování filmů“ a pak stejným způsobem složka ve složce. Zároveň má mnoho složek dlouhé názvy a názvy - více než 10-15 znaků, což dá dohromady objem znaků ve všech jménech více než 260. A pokud na konci takové „matrjošky“ je soubor, pak se může ukázat, že s ním nemůžete pracovat můžete... Někdy vám systém sám nedovolí vytvořit složku nebo soubor, který překračuje povolený počet znaků, ale někdy se to z nějakého důvodu stane.

Nejprve pro začátečníky vysvětlím, co je cesta k souboru a složce. Cesta je tzv. adresa v počítači, kde se soubor nebo složka nachází. Například soubor s názvem „Můj soubor.txt“ je umístěn na místním disku D: ve složce „Dokumenty“. Cesta k tomuto souboru pak bude vypadat takto:

D:\Dokumenty\Můj soubor.txt

Nebo například takto bude vypadat cesta z příkladu výše, kde jsem ukázal složitou strukturu složek.

Jak můžete vidět, počet znaků v cestě výše je velký a je možné, že na konci bude soubor nebo složka s dlouhým názvem, který nemůžete smazat.

Když se pokusíte odstranit soubor s dlouhým názvem cesty, zobrazí se okno s chybou, jako je tato:

Pokusil jsem se problém uměle znovu vytvořit a toto je to, co jsem dostal.

Na jednotce „D“ jsem vytvořil složku s krátkým názvem „1“ a umístil do ní soubor s velmi dlouhým názvem. Zde je příklad:

Nyní také přejmenuji složku „1“ na nějaký velmi dlouhý název, například:

Zajímavé je, že Windows volně umožňují přejmenovat složku na takto dlouhý název, a to i přesto, že počet znaků v názvu této složky + název souboru již přesahuje 260! Po přejmenování složky na dlouhý název již nemohu odstranit soubor v ní umístěný a zobrazí se chyba.

Nebo zde je další příklad... Spravuji webovou stránku Moskevské nástrojové školy, kde jsem dříve pracoval na plný úvazek, a někdy používám kopii webu na svém počítači k testování nových „dobrot“ pro web. Co když nainstaluji něco špatného a web na hostingu zemře? :) A tak to zkontroluji na počítači a jestli je vše v pořádku, tak to nastavím na reálném webu umístěném na hostingu. Jednou jsem tedy přenesl celý web z hostingu, abych otestoval jednu věc, a po dokončení práce jsem se rozhodl smazat složku s webem z počítače. Přeci jen váží asi 6 GB. Celý web byl smazán, kromě několika složek. Začal jsem hledat a viděl jsem, že ty složky, které obsahovaly soubor s dlouhým názvem ve formě hieroglyfů, nebyly smazány:

Pokusil jsem se znovu smazat tento soubor s dlouhým názvem a viděl jsem stejnou chybu, kterou jsem uvedl výše. Zkoušel jsem to přejmenovat, ale taky to nejde. No, musel jsem přemýšlet, jak problém vyřešit.

Jak vyřešit problém s mazáním složky/souboru s dlouhým názvem cesty!

Vyzkoušel jsem 2 způsoby, jak odstranit složku/soubor s dlouhým názvem v cestě k němu. Obojí není technicky náročné (zejména 1.), takže si myslím, že začátečník si poradí, když udělá vše přesně tak, jak ukazuji:

    Přejmenujte více složek v cestě k souboru na kratší název. Toto je nejjednodušší řešení, které by již mělo pomoci mnoha! Předpokládejme, že máte ve složce soubor s velmi dlouhým názvem, který nelze odstranit, otevřít, zkopírovat a obecně s ním nelze pracovat.

    Pak zkuste jednoduše přejmenovat složku, ve které se nachází soubor s dlouhým názvem, například na „1“. Dovolte mi, abych se vrátil k jednomu z výše uvedených příkladů. Zde je složka s dlouhým názvem:

    Pomocí standardního Průzkumníka Windows přejmenuji název této složky na „1“ a takto nyní vypadá cesta k souboru:

    Nyní můžete se souborem bezpečně pracovat, systém vám jej umožní otevřít, přejmenovat a smazat.

    Pokud máte dlouhý strom složek, tzn. jako hnízdící panenka, v jedné složce je další, v ní je další, pak další, pak začněte přejmenovávat od úplně první složky z této hnízdící panenky. Ne s tím posledním na seznamu, ale s tím prvním!

    Může se stát, že existuje velké množství složek a některé z nich nebudete moci přejmenovat kvůli stejné chybě nebo vám to zabere spoustu času. V tomto případě doporučuji druhou metodu.

    Metoda spočívá v tom, že můžete vzít nějakou složku například uprostřed společného stromu a připojit ji jako virtuální disk. Virtuální disk je něco, co nám připomíná běžný lokální disk, ale co je jednoduše svázáno s konkrétní složkou, například pro rychlou interakci s ní.

    Řekněme, že vás čeká dlouhá cesta, jako je tato:

    D:\Video\Moje filmy\Vše, co potřebujete ke sledování filmů\Programy pro sledování filmů\Jak otevřít filmy MP4\Seznam ukázkových filmů MP4\Seznam programů pro otevírání MP4\Co nedělat při otevírání souborů MP4

    Předpokládejme, že v úplně poslední složce máme nějaký problémový soubor, se kterým nemůžeme pracovat, protože cesta k němu, jak vidíme, je poměrně dlouhá :)

    Můžeme vzít a připojit jednu ze složek s dlouhým názvem uprostřed cesty jako virtuální disk. Nechť je to složka „Programy pro sledování filmů“.

    Pro připojení virtuálního disku potřebujeme tzv. příkazový řádek Windows, tzn. řídicí panel.

    Můžete jej otevřít pomocí vyhledávání ve Windows. Do vyhledávání zadejte „Příkazový řádek“:

    V okně příkazového řádku musíme zadat příkaz:

    subst virtual_disk_letter "path_to_folder"

    Můžete nastavit libovolné písmeno jednotky, pokud již není obsazeno některým z místních jednotek. Například máte místní jednotku C a D, což znamená, že již nemůžete volat virtuální jednotku se stejným písmenem. Můžete to nazvat například písmenem „X“, protože se ve Windows používá zřídka.

    Jako cestu ke složce vložíte cestu ke složce, kterou chcete připojit jako virtuální. Jak jsem již řekl, v mém příkladu vytvoříme „Programy pro sledování filmů“ jako virtuální složku, což znamená, že cesta musí být zadána takto:

    D:\Video\Moje filmy\Vše, co potřebujete ke sledování filmů\Programy pro sledování filmů\

    Takže konečný příkaz v mém případě bude vypadat takto:

    subst X: „D:\Video\Moje filmy\Vše, co potřebujete ke sledování filmů\Programy pro sledování filmů\“

    Chcete-li provést zadaný příkaz, stiskněte klávesu „Enter“ na klávesnici. Vytvoří se virtuální disk.

    Nyní přejdeme do Průzkumníka Windows, přejděte do části „Tento počítač“ (nebo „Počítač“) a zde uvidíte vytvořený virtuální disk:

    Můžete jej rozlišit podle písmene. Virtuálnímu disku jsem přiřadil písmeno "X". Pokud nyní otevřeme tento virtuální disk, okamžitě se ocitneme ve složce „Programy pro sledování filmů“. Tito. vzali jsme a odřízli polovinu cesty k finální složce.

    Pro srovnání...

    Dříve cesta ke konečné složce vypadala takto:

    D:\Video\Moje filmy\Vše, co potřebujete ke sledování filmů\Programy pro sledování filmů\Jak otevřít filmy MP4\Seznam ukázkových filmů MP4\Seznam programů pro otevírání MP4\Co nedělat při otevírání souborů MP4

    Po připojení virtuálního disku ke složce „Programy pro sledování filmů“ vypadá cesta ke konečné složce takto:

    X:\Jak otevřít filmy MP4\Seznam ukázkových filmů MP4\Seznam programů pro otevírání MP4\Co nedělat při otevírání souborů MP4

    Cítíte ten rozdíl? Cesta je zkrácena na polovinu, protože písmeno jednotky nás okamžitě nasměruje do složky uprostřed cesty :) A protože cesta je značně zkrácena, pravděpodobně jste nyní odstranili omezení počtu znaků v názvech souborů a složek a budete být schopen odstranit soubor nebo složku s dlouhým názvem!

    Poté, co problém se souborem vyřešíte, lze virtuální disk znovu smazat, aby z něj v Průzkumníkovi netrnuly oči.

    Chcete-li to provést, znovu otevřete příkazový řádek systému Windows a zadejte příkaz:

    Subst virtual_disk_letter /d

    V mém případě je písmeno jednotky „X“, takže příkaz bude vypadat takto:

Když jsem přemýšlel o možnostech řešení problému, jak smazat složku nebo soubor s dlouhým názvem, našel jsem na internetu další možnost: smazat problematický soubor přes program Total Commander. Zkoušel jsem to, nevyšlo to, proto jsem tuto metodu nedoporučoval :)) A metoda, i když by někomu fungovala, upřímně není zábavná, protože si musíte do svého počítač za účelem smazání pouze jednoho souboru nebo složek s dlouhým názvem...

Myslím, že pokud se objeví podobný problém, který jsem měl již nejednou, určitě vám pomůže některý z výše popsaných způsobů.

To je vše! Brzy na viděnou u dalších článků ;)

Název se ukázal být dlouhý, ale naznačuje podstatu problému, který zde bude popsán. Nedávno jsem se setkal s nepříliš dobrou situací. Při třídění pevného disku a odstraňování nepotřebných věcí jsem zjistil, že jeden ze souborů nebyl smazán, ale objevila se následující chyba: „Systém souborů nepodporuje tak dlouhé názvy zdrojových souborů. Zkuste soubor přesunout do složky s kratší cestou nebo zadejte kratší název souboru a zkuste to znovu."

Nejen, že jsem nemohl soubor smazat, ale také jsem nemohl změnit název na kratší název. Pro mnohé by to vypadalo jako slepá ulička, protože se ukazuje, že soubor není smazán.

Ve skutečnosti lze problém vyřešit velmi jednoduše a rychle a nyní popíšu dva způsoby jeho řešení a je na vás, abyste se rozhodli, který z nich použijete.

Co dělat, když je cesta ke zdroji příliš dlouhá, jak takový soubor smazat?

Pokud máte soubor, který není odstraněn kvůli dlouhému názvu, existuje několik možností, jak problém vyřešit. Například soubor je vnořen do několika adresářů, řekněme pěti nebo dokonce deseti složek, které mají názvy o délce 10-20 znaků, pak to může být důvod, proč soubor nesmazat. Faktem je, že Windows nepodporuje žádné soubory, jejichž názvy mají více než 260 znaků. Pokud je tento limit překročen, objeví se chyba, kterou jsem ukázal výše. Celkový počet složek s vlastními názvy a samotný název souboru by měl být menší než 260 znaků. Systém má také jednu vlastnost – při překročení tohoto limitu můžeme stále přejmenovávat složky. To znamená, že musíte všechny složky přejmenovat na krátký název, například písmeno nebo číslo.


Tento problém může nastat nejen proto, že jste dali tak dlouhé jméno. To se mi stalo, když jsem se rozhodl stáhnout soubory webových stránek ze serveru a něco udělat. Vzhledem k tomu, že soubory již nebyly potřeba, smazal jsem celý adresář se soubory webu, ale jak se ukázalo, obsahoval soubor s velmi dlouhým názvem plus názvy složek, a to mi nedovolilo jej celý smazat.

Metoda dva pomůže, pokud první selže. Faktem je, že ne všechny složky vedoucí k souboru s dlouhým názvem lze přejmenovat a dojde ke stejné chybě systému souborů. Poté můžete vytvořit virtuální disk pomocí libovolné podsložky vedoucí k neodstranitelnému souboru. Nyní vám ukážu, jak na to.

Otevřete příkazový řádek. Chcete-li to provést, stiskněte kombinaci Win + R a zadejte příkaz cmd. Můžete kliknout pravým tlačítkem myši na nabídku Start (nebo na kombinaci kláves Win+X) a vybrat tam příkazový řádek.

Nyní napíšete příkaz, který nám vytvoří virtuální disk:

Musíte vybrat písmeno jednotky, které není obsazeno ostatními. Systémový oddíl je obvykle označen jako C a druhý oddíl jako D nebo E, poté vyberte jakýkoli jiný.

Cesta ke složce musí být zadána z disku. Pokud je to pro vás obtížné, otevřete složku, která bude fungovat jako virtuální disk, a zkopírujte k ní cestu v Průzkumníku nahoře.

Můj příkaz vypadá takto:

Když přejdeme na Tento počítač, měli byste tam vidět jednotku s písmenem, které jsme jí přiřadili z příkazového řádku. Cesta k souboru se tedy zkrátí téměř na polovinu, což znamená, že celková délka znaků může být menší než 260 znaků. Nyní se můžete pokusit zbavit nesmazatelného.


Chcete-li odstranit virtuální disk, musíte zadat příkaz:

substDiskLetter/d

Pomocí Total Commanderu

Na internetu jsem objevil metodu, která umožňuje smazat soubory, které nelze smazat pomocí . Nevýhodou je samozřejmě to, že budete muset do počítače nainstalovat další software a ne každý to bude chtít dělat. V každém případě zde tuto metodu nechám pro případ, že by ji někdo chtěl použít.

Stáhněte a nainstalujte program. Pojďme na kartu "Soubor" klikněte na sekci "Změnit atributy". Zobrazí se okno, kde odstraníme zaškrtnutí ze všech atributů. Pokud u položky v horní části není žádné zaškrtnutí "Zpracovat obsah adresáře"- Vybrat. Nyní se ze stejného programu pokusíme smazat soubor s dlouhým názvem.


Používáme archivátor 7-Zip

Pro tento úkol budeme potřebovat archivátor 7-Zip. Klepněte pravým tlačítkem myši na počáteční adresář a ukažte myší na oddíl "7-Zip" a vyberte položku "Přidat do archivu".

Zobrazí se okno, ve kterém stačí zaškrtnout pouze jedno políčko. "Smazat soubory po kompresi". Potom klepněte na tlačítko OK.

Na ploše se vytvoří archiv všech těchto věcí a složky s dlouhými soubory se jednoduše odstraní. Samotný archiv můžete bez problémů smazat.

Toto jsou způsoby, na které jsme se podívali, jak opravit chybu, že soubor není odstraněn. Možná máte jiné možnosti, jak to udělat?

Není žádným tajemstvím, že Průzkumník Windows, stejně jako většina ostatních aplikací pro Windows, včetně PowerShellu, neumí pracovat s objekty souborového systému s hlubokým vnořením složek. délka cesty přesahuje 260 znaků. Navíc toto omezení existuje pouze na aplikační úrovni a samotný souborový systém NTFS podporuje cesty k souborům až do 32767 postavy.

Toto omezení ukládá knihovna Win32 API a jehož maximální délka cesty je 260 znaků ( MAX_PATH=260). Obecně se cesta skládá z následujících prvků: +[path_of_256_characters]+[ ] a maximální délka jednoho adresáře/souboru v NTFS je 255 znaků v Unicode. Při použití funkcí Unicode API je možné použít cestu k 32767 postavy. Díky tomu mnoho programů třetích stran (stejní populární správci souborů, například DALEKO A Total Commander) bez problémů zpracovává soubory/složky, jejichž délka cesty přesahuje 260 znaků.

Rada. Toto omezení rozhraní Win32 API můžete obejít a pracovat s dlouhými názvy souborů pomocí formátu cesty UNC, zadáním absolutní cesty k souboru pomocí předpony cesty s prodlouženou délkou. \\?\ . Například takto \\?\C:\NějakáDlouhá cesta\DlouhýNázevSoubor.txt

Toto omezení také neplatí, pokud mají uživatelé síťový přístup k souborům prostřednictvím protokolu SMB (kvůli tomu jsou na souborových serverech s uživatelskými daty běžné adresářové struktury s dlouhými cestami). Správce spravující tento server nemůže spravovat (mazat/přesouvat) soubory s dlouhými cestami prostřednictvím standardního rozhraní Průzkumníka Windows. Při pokusu o vytvoření/zkopírování souboru do takového adresáře se zobrazí chyba:

Cesta k cíli je příliš dlouhá. Název souboru (názvů) by byl příliš dlouhý pro cílovou složku. Můžete zkrátit název souboru a zkusit to znovu, nebo zkusit umístění, které má zkrácenou cestu

Jiné programy/dialogová okna mohou hlásit přítomnost omezení svým vlastním způsobem.

Souhlas, je legrační, že je rok 2014 a stále se bavíme o limitu 260 znaků na maximální délku cesty ve Windows... Ale vypadá to, že se v blízké budoucnosti neočekávají žádné drastické změny a dokonce ani v těch úplně nejnovějších Windows 10 Technical Preview toto omezení stále existuje.

V tomto článku si ukážeme, jak ve Windows můžete pracovat se soubory, jejichž cesta přesahuje 260 znaků. V tomto případě je naším úkolem smazat adresář obsahující soubory s dlouhou cestou.

Když se pokusíte odstranit takový adresář z Průzkumníka, zobrazí se chyba:

Názvy souborů by byly příliš dlouhé pro cílovou složku. Můžete zkrátit název souboru a zkusit to znovu, nebo zkusit umístění, které má zkrácenou cestu.

Powershell také nemůže správně zpracovat adresáře a soubory s velkými cestami přesahujícími 260 znaků. Když se pokusíte odstranit adresář s takovými soubory (C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath), zobrazí se chyba:

Remove-Item .\verylongpath -Recurse

Odebrat položku: Zadaná cesta, název souboru nebo obojí jsou příliš dlouhé. Plně kvalifikovaný název souboru musí být menší než 260
znaků a název adresáře musí mít méně než 248 znaků.
Na řádku:1 znak:1
+ Remove-Item .\verylongpath -Recurse
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: WriteError: (C:\Install\MS S...it\verylongpath:String) , PathTooLongExcepti
na
+ FullyQualifiedErrorId: RemoveItemIOError,Microsoft.PowerShell.Commands.RemoveItemCommand

Nejjednodušší možností (ve skutečnosti je navrženo v okně chyby) je zkrátit název nadřazených složek, čímž se zkrátí celková délka cesty (ale není to vždy použitelné).

Mklink /d c:\install\link “C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath”

Další možností, která připomíná práci se symbolickým odkazem, je namapování problematické složky na virtuální disk (v našem příkladu X:), čímž se také zkrátí délka cesty:

Subst X: „C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath“

Nyní můžete pracovat s daty na disku X:, přičemž cesty k souborům nepřekročí limit. Po dokončení práce můžete virtuální disk smazat:

Subst X: /d

Osobně se mi ale na úkolu mazání dat v takových situacích nejvíce líbí schopnost robocopy.exe, který podporuje práci s dlouhými cestami.

Pomocí možnosti /MIR může obslužný program robocopy vytvořit úplnou kopii (zrcadlení) zdrojového adresáře v cílovém adresáři. A pokud je zdrojová složka prázdná, všechna data v cílové složce se také vymažou. Vytvoříme prázdnou složku C:\Instalovat\test a pomocí argumentu /MIR zkopírujte obsah testovací složky do cílové složky (pokud název složky obsahuje mezery nebo znaky azbuky, cesta musí být uzavřena v uvozovkách).

Robocopy /MIR C:\Install\test "C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath"

Po provedení příkazu se obsah adresáře C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath vymaže (nahradí se obsahem prázdného adresáře).

Dnes jsme si tedy ukázali několik jednoduchých triků, které můžete použít při práci se složkami na souborových serverech, které obsahují složky, jejichž délka cesty přesahuje limit 260 znaků.

Brání vám škodlivý operační systém Windows ve smazání souboru a křičí, že jeho zdrojová cesta je příliš dlouhá? V tomto článku vám řeknu, jak snadno a jednoduše, bez jakýchkoli programů, porazit tuto pohromu zkrácením názvu souboru.

Cesta ke zdroji je příliš dlouhá – proč?

Rád bych hned vysvětlil, proč se takové systémové varování zobrazuje a není možné provést základní akce kopírování nebo mazání souboru (složky)…

Samotné upozornění obsahuje odpověď na tuto otázku – souborový systém Windows nepodporuje (nerozumí) názvům zdrojových souborů delším než 255 znaků.

Ale název vašeho souboru nebo složky je krátký, například „Fotografie z dovolené“? Faktem je, že „hloupý“ systém vnímá celou cestu k souboru jako svůj název. Pokud se váš soubor nebo složka nachází někde příliš hluboko ve správci souborů, bude jeho název vypadat asi takto...

Takže symboly jmen jsou shromážděny do skupiny více než 255 kusů.

Jak v tomto případě odstranit nesmazatelný soubor nebo složku? Je to velmi jednoduché - musíte zkrátit název souboru (cestu) přejmenováním vnořených složek.

Jak odstranit soubor s dlouhým názvem

Na svém příkladu vám ukážu, jak smazat soubor s dlouhým názvem, který, jak píše systém, má příliš dlouhou cestu ke zdroji.

Včera jsem se rozhodl vyčistit počítač ze starých záložních kopií webu, ale ty nechtěly být smazány. Jak jste uhodli, objevilo se varování, že cesta ke zdroji je příliš dlouhá...

Počínaje úplně první složkou na této dlouhé cestě jsem přejmenoval několik věcí...

...a pokusil se znovu zbavit souboru s nyní kratším názvem - bezpečně se dostal do země smazaných souborů.

Přirozeně by se nový název souboru (složky) měl skládat z jednoho znaku nebo čísla, jako v mém příkladu.

Takto je snadno vyřešen problém s mazáním souborů nebo složek s dlouhým názvem. Toto samozřejmě není jediná metoda. Umět odstranit pomocí speciálních programů nebo přes registr - právě jsem ukázal manuální metodu. Někomu to zabere jen minutu, jinému půl hodiny – je na vás, jak zkrátit název souboru a příliš dlouhou cestu ke zdroji.

Až po nové užitečné tipy a zajímavé počítačové programy.




Horní