Kan ikke kopiere en tittel som er for lang. Slik sletter du en fil eller mappe med et langt navn hvis Windows ikke tillater deg dette

Her er et eksempel på en mappestruktur som jeg kalte "den store dukken":

Som du kan se, på stasjonen "D" (Data) er det en kildevideomappe, i den er det en "Movies"-mappe, i den er det "Alt du trenger for å se filmer" og deretter på samme måte en mappe i en mappe. Samtidig har mange mapper lange navn og navn - mer enn 10-15 tegn, som totalt vil gi volumet av tegn i alle navn mer enn 260. Og hvis det på slutten av en slik "matryoshka" er en fil, så kan det vise seg at du ikke kan jobbe med den du kan... Noen ganger lar ikke selve systemet deg til slutt opprette en mappe eller fil som overskrider tillatt antall tegn, men noen ganger skjer dette av en eller annen grunn.

Først, for nybegynnere, vil jeg forklare hva en fil- og mappebane er. Sti er den såkalte adressen på datamaskinen hvor filen eller mappen ligger. For eksempel er en fil kalt "My file.txt" plassert på den lokale stasjonen D: i "Documents"-mappen. Da vil banen til denne filen se slik ut:

D:\Documents\My file.txt

Eller, for eksempel, dette er hvordan banen fra eksempelet ovenfor vil se ut, der jeg viste kompleks struktur mapper.

Som du kan se, er antallet tegn i banen over stort, og det er mulig at det på slutten vil være en fil eller mappe med langt navn, som du ikke kan slette.

Når du prøver å slette en fil med et langt banenavn, vil du få et vindu med en feil som denne:

Jeg prøvde å gjenskape problemet kunstig, og dette er hva jeg fikk.

På stasjon "D" opprettet jeg en mappe med det korte navnet "1" og plasserte en fil med et veldig langt navn. Her er et eksempel:

Nå gir jeg også nytt navn til mappen "1" til et veldig langt navn, for eksempel:

Interessant nok lar Windows deg fritt gi nytt navn til en mappe til et så langt navn, til tross for at antallet tegn i navnet på denne mappen + filnavnet allerede overstiger 260! Vel, etter å ha omdøpt mappen til et langt navn, kan jeg ikke lenger slette filen som ligger i den og få feilen vist.

Eller her er et annet eksempel... Jeg vedlikeholder nettstedet til Moscow Instrument-Making College, hvor jeg tidligere jobbet på heltid, og noen ganger bruker jeg en kopi av nettstedet på datamaskinen min for å teste noen nye "godbiter" for nettstedet. Hva om jeg installerer noe dårlig og nettsiden på hostingen dør? :) Og så sjekker jeg det på datamaskinen min og hvis alt er i orden, så setter jeg det opp på en ekte nettside som ligger på hostingen. Så en gang overførte jeg hele nettstedet fra hosting for å teste én ting, og etter at jeg var ferdig med å jobbe bestemte jeg meg for å slette mappen med nettstedet fra datamaskinen min. Tross alt veier den omtrent 6 GB. Hele siden ble slettet, bortsett fra en rekke mapper. Jeg begynte å lete og så at de mappene som inneholdt en fil med et langt navn i form av hieroglyfer ikke ble slettet:

Jeg prøvde å slette denne filen med et langt navn igjen og så den samme feilen som jeg nevnte ovenfor. Jeg prøvde å gi det nytt navn, men det fungerer heller ikke. Vel, jeg måtte tenke på hvordan jeg skulle løse problemet.

Hvordan løse problemet med å slette en mappe/fil med et langt banenavn!

Jeg prøvde 2 måter å slette en mappe/fil med et langt navn i banen til. Begge er ikke teknisk vanskelige (spesielt den første), så jeg tror en nybegynner kan klare seg hvis han gjør alt akkurat som jeg viser:

    Gi nytt navn til flere mapper i en filbane til flere kort navn. Dette er den enkleste løsningen som allerede burde hjelpe mange! Anta at du har en fil i en mappe med et veldig langt navn som du ikke kan slette, åpne, kopiere og generelt ikke kan jobbe med.

    Prøv deretter å endre navn på mappen der filen med et langt navn ligger, for eksempel til "1". La meg gå tilbake til et av eksemplene ovenfor. Her er en mappe med et langt navn:

    Jeg gir nytt navn via standard leder Windows navnet på den mappen er i "1", og dette er hvordan filbanen nå ser ut:

    Nå kan du trygt jobbe med filen, systemet lar deg åpne den, gi den nytt navn og slette den.

    Hvis du har et langt mappetre, dvs. som en hekkende dukke, i en mappe er det en annen, i den er det en annen, så en annen, og begynn å gi nytt navn fra den aller første mappen fra denne hekkende dukken. Ikke med den siste på listen, men med den første!

    Det kan være at mappene stor mengde og å gi nytt navn til noen av dem vil ikke fungere på grunn av den samme feilen, eller det vil ta deg mye tid. I dette tilfellet foreslår jeg den andre metoden.

    Metoden er at du kan ta en mappe, for eksempel i midten av et felles tre og koble den til som en virtuell disk. En virtuell disk er noe som minner oss om en vanlig disk. lokal disk, men som rett og slett binder seg til spesifikk mappe, for eksempel for å raskt samhandle med den.

    La oss si at du har noe slikt en lang vei:

    D:\Video\Mine filmer\Alt du trenger for å se filmer\Programmer for å se film\Hvordan åpne MP4-filmer\Liste over MP4-eksempelfilmer\Liste over programmer for åpning av MP4\Hva du ikke skal gjøre når du åpner MP4-filer

    La oss anta at i siste mappe vi har noen problematisk fil, som vi ikke kan jobbe med, siden veien til den, som vi ser, er ganske lang :)

    Vi kan ta og koble en av mappene med et langt navn i midten av banen som en virtuell disk. La dette være mappen "Programmer for å se filmer".

    For å koble til en virtuell disk trenger vi den såkalte Windows-kommandolinjen, dvs. konsoll.

    Du kan åpne den via Windows-søk. I søket skriver du "Kommandolinje":

    I vinduet kommandolinje vi må skrive kommandoen:

    subst virtual_disk_letter "bane_til_mappe"

    Du kan sette hvilken som helst stasjonsbokstav, så lenge den ikke allerede er okkupert av en av lokale disker. For eksempel har du lokal stasjon C og D, som betyr virtuell disk du vil ikke lenger kunne kalle det med samme bokstav. Du kan for eksempel kalle det bokstaven "X", fordi det sjelden brukes i Windows.

    For mappebanen setter du inn banen til mappen du vil koble til som en virtuell. Som jeg allerede sa, i mitt eksempel virtuell mappe La oss lage "Programmer for å se filmer", som betyr at banen må spesifiseres slik:

    D:\Video\Mine filmer\Alt du trenger for å se filmer\Programmer for å se film\

    Så den siste kommandoen i mitt tilfelle vil se slik ut:

    subst X: "D:\Video\Mine filmer\Alt du trenger for å se filmer\Programmer for å se film\"

    For å utføre den angitte kommandoen, trykk "Enter"-tasten på tastaturet. Den virtuelle disken vil bli opprettet.

    La oss nå gå til Windows Utforsker, gå til delen "Denne PCen" (eller "Datamaskinen") og se den opprettede virtuelle disken der:

    Du kan skille den med bokstaven. Jeg tildelte bokstaven "X" til den virtuelle disken. Hvis vi nå åpner denne virtuelle disken, vil vi umiddelbart finne oss selv i mappen "Programmer for å se filmer". De. vi tok og kuttet av halve stien til den siste mappen.

    Til sammenligning...

    Tidligere så banen til den endelige mappen slik ut:

    D:\Video\Mine filmer\Alt du trenger for å se filmer\Programmer for å se film\Hvordan åpne MP4-filmer\Liste over MP4-eksempelfilmer\Liste over programmer for åpning av MP4\Hva du ikke skal gjøre når du åpner MP4-filer

    Etter å ha koblet den virtuelle disken til mappen "Programmer for å se filmer", ser banen til den endelige mappen slik ut:

    X:\Hvordan åpne MP4-filmer\Liste over MP4-eksempelfilmer\Liste over programmer for å åpne MP4\Hva du ikke skal gjøre når du åpner MP4-filer

    Føler du forskjellen? Banen er forkortet med halvparten, siden stasjonsbokstaven umiddelbart leder oss til mappen i midten av banen :) Og siden banen er kraftig forkortet, har du sannsynligvis nå fjernet tegngrensen i navnene på filer og mapper og vil kunne slette en fil eller mappe med et langt navn!

    Etter at du har løst problemet med filen, kan den virtuelle disken slettes igjen, slik at den ikke blir et øyesår i Utforsker.

    For å gjøre dette, åpne ledeteksten igjen Windows-streng og skriv inn kommandoen:

    Subst virtual_disk_letter /d

    I mitt tilfelle er stasjonsbokstaven "X", så kommandoen vil se slik ut:

Da jeg tenkte på alternativer for å løse problemet, hvordan slette en mappe eller fil med et langt navn, fant jeg et annet alternativ på Internett: slett den problematiske filen gjennom programmet " Totalkommandør" Jeg prøvde det, det fungerte ikke, det er derfor jeg ikke anbefalte denne metoden :)) Og metoden, selv om den ville fungere for noen, er ærlig talt ikke morsom, fordi du må installere tilleggsprogram til datamaskinen din for å slette bare én fil eller mappe med et langt navn...

Jeg tenker når det skjer lignende problem problem, som jeg har støtt på mer enn en gang, vil en av metodene beskrevet ovenfor definitivt hjelpe deg.

Det er alt! Vi sees snart i de neste artiklene ;)

Skadelig operativsystem Hindrer Windows deg fra å slette en fil og roper at den har "Kildebanen er for lang"? I denne artikkelen vil jeg fortelle deg hvordan du enkelt og enkelt, uten noen programmer, kan beseire denne plagen ved å forkorte filnavnet.

Veien til kilden er for lang – hvorfor?

Jeg vil gjerne forklare med en gang hvorfor en slik systemadvarsel vises og det ikke er mulig å utføre grunnleggende kopierings- eller slettehandlinger på en fil (mappe)...

Selve meldingen inneholder svaret på dette spørsmålet - filsystem Windows støtter ikke (forstår ikke) navn kildefiler lengre enn 255 tegn.

Men fil- eller mappenavnet ditt er kort, for eksempel "Feriebilder"? Faktum er at det "dumme" systemet oppfatter hele banen til filen som navnet. Hvis filen eller mappen din er plassert et sted for dypt i filbehandlingen, vil navnet se omtrent slik ut...

Så navnesymbolene er samlet i en gjeng på mer enn 255 stykker.

Hvordan sletter jeg en ikke-slettbar fil eller mappe i dette tilfellet? Det er veldig enkelt - du må forkorte filnavnet (banen) ved å gi nytt navn til nestede mapper.

Hvordan slette en fil med et langt navn

Jeg skal vise deg med mitt eksempel hvordan du sletter en fil med et langt navn som, som systemet skriver, har for lang vei til kilden.

I går bestemte jeg meg rengjør datamaskinen fra de gamle sikkerhetskopier nettstedet, men de ønsket ikke å bli slettet. Som du gjettet, dukket det opp en advarsel om at banen til kilden var for lang...

Fra den aller første mappen i denne lange banen ga jeg nytt navn til flere ting...

...og prøvde igjen å kvitte seg med filen med et nå kortere navn - den dro trygt til landet med slettede filer.

Naturligvis bør det nye filnavnet (mappe) bestå av ett tegn eller tall, som i mitt eksempel.

Slik løses problemet med å slette filer eller mapper med et langt navn enkelt. Dette er selvfølgelig ikke den eneste metoden. Kan spesielle programmer slette eller gjennom registeret - jeg viste bare manuell metode. For noen vil det ta bare et minutt, for andre vil det ta en halvtime - det er opp til deg å bestemme hvordan du forkorter filnavnet og den for lange banen til kilden.

Inntil nye nyttige tips og interessante dataprogrammer.

Det er ingen hemmelighet at Windows Utforsker, som de fleste andre Windows-applikasjoner, inkludert PowerShell, ikke kan fungere med filsystemobjekter med dyp mappe-hekking. banelengden overskrider 260 tegn. Dessuten eksisterer denne begrensningen bare på applikasjonsnivå og selve filen NTFS-system støtter filstier opp til 32767 tegn.

Denne begrensningen er pålagt av biblioteket Win32 API, og hvis maksimale banelengde er 260 tegn ( MAX_PATH=260). Generelt er banen dannet av følgende elementer: +[path_of_256_characters]+[ ] , og maksimal lengde på én katalog/fil i NTFS er 255 tegn i Unicode. Ved bruk av Unicode API-funksjoner er det mulig å bruke banen til 32767 tegn. Takket være dette, mange tredjeparts programmer(det samme populære filbehandlere, For eksempel LANGT Og Totalkommandør) behandler uten problemer filer/mapper hvis banelengde overstiger 260 tegn.

Råd. Du kan omgå denne Win32 API-begrensningen og jobbe med lange filnavn ved å bruke UNC-baneformatet, og spesifisere absolutt vei til filen ved å bruke baneprefikset med utvidet lengde \\?\ . For eksempel, som denne \\?\C:\SomeLongPath\LongNameFile.txt

Denne begrensningen gjelder heller ikke når nettverkstilgang brukere til filer via SMB-protokollen (på grunn av dette er katalogstrukturer med lange baner ofte filservere med brukerdata). Administrator betjener denne serveren klarer ikke gjennom standard grensesnitt Windows utforsker Utforsker administrere (slett/flytt) filer med lange baner. Når du prøver å opprette/kopiere en fil til en slik katalog, vises en feilmelding:

Destinasjonsveien er for lang. Filnavnet(e) vil være for langt for målmappen. Du kan forkorte filnavnet og Prøv igjen, eller prøv et sted som har en forkortet bane

Andre programmer/dialogbokser kan rapportere tilstedeværelsen av begrensningen på sin egen måte.

Enig, det er morsomt at det er 2014, og vi snakker fortsatt om grensen på 260 tegn per side. maksimal lengde stier i Windows... Men det ser ut til at det ikke forventes noen grunnleggende endringer i nær fremtid, og selv i den aller nyeste Windows 10 Technical Preview eksisterer denne begrensningen fortsatt.

I denne artikkelen vil vi vise hvordan du i Windows kan jobbe med filer hvis bane overstiger 260 tegn. I i dette tilfellet vår oppgave er å slette katalogen som inneholder filer med lang lengde måter.

Når du prøver å slette en slik katalog fra Explorer, vises en feilmelding:

Filnavnet(e) vil være for langt for målmappen. Du kan forkorte filnavnet og prøve igjen, eller prøve en plassering som har en forkortet bane.

Powershell kan heller ikke håndtere kataloger og filer med store baner som overstiger 260 tegn. Når du prøver å slette en katalog med slike filer (C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath) vises en feil:

Remove-Item .\verylongpath -Recurse

Remove-Item: Den angitte banen, filnavnet eller begge er for lange. Det fullstendige filnavnet må være mindre enn 260
tegn, og katalognavnet må være mindre enn 248 tegn.
Ved linje:1 char:1
+ Remove-Item .\verylongpath -Recurse
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: WriteError: (C:\Install\MS S...it\verylongpath:String) , PathTooLongExcepti

+ FullyQualifiedErrorId: RemoveItemIOError,Microsoft.PowerShell.Commands.RemoveItemCommand

Det enkleste alternativet (det er faktisk foreslått i feilvinduet) er å forkorte navnet på de overordnede mappene, og redusere den totale lengden på banen (men dette er ikke alltid aktuelt).

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

Et annet alternativ, som minner om å jobbe med en symbolsk lenke, er å kartlegge den problematiske mappen til en virtuell disk (i vårt eksempel X:), og dermed også redusere banelengden:

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

Nå kan du jobbe med data på X:-stasjonen, banene til filene vil ikke overskride grensen. Etter å ha fullført arbeidet, kan du slette den virtuelle disken:

Subst X: /d

Men personlig er det jeg liker best for oppgaven med å slette data i slike situasjoner, evnen robocopy.exe, som støtter arbeid med lange veier.

Bruker alternativet /MIR, kan robocopy-verktøyet lage full kopi(speil) kildekatalogen i målkatalogen. Og hvis kildemappen er tom, slettes også alle data i målmappen. La oss lage en tom mappe C:\Install\test og bruk /MIR-argumentet, kopier innholdet i testmappen til målmappen (hvis mappenavnet inneholder mellomrom eller kyrilliske tegn, må banen være omgitt av anførselstegn).

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

Etter å ha utført kommandoen, slettes innholdet i katalogen C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath (erstattet med innholdet i den tomme katalogen).

Så i dag viste vi noen enkle triks som du kan bruke når du arbeider med mapper på filservere som inneholder mapper hvis banelengde overskrider grensen på 260 tegn.

Tittelen viste seg å være lang, men den indikerer essensen av problemet som vil bli beskrevet her. Nylig møtte jeg en ikke særlig god situasjon. Mens jeg sorterte harddisken og ryddet den for unødvendige ting, oppdaget jeg at en av filene ikke ble slettet, men følgende feil dukket opp: "Filsystemet støtter ikke slike lange navn kildefiler. Prøv å flytte filen til en mappe med kortere banelengde eller angi en lengre bane kort navn fil og prøv igjen."

Ikke bare kunne jeg ikke slette filen, men jeg kunne heller ikke endre navnet til et kortere navn. For mange vil dette virke som en blindvei, fordi det viser seg at filen ikke er slettet.

Faktisk kan problemet løses veldig enkelt og raskt, og nå vil jeg beskrive to metoder for å løse det, og det er opp til deg å bestemme hvilken du skal bruke.

Hva gjør jeg hvis banen til kilden er for lang, hvordan sletter jeg en slik fil?

Hvis du har en fil som ikke blir slettet på grunn av et langt navn, er det flere alternativer for å løse problemet. For eksempel er en fil nestet i flere kataloger, si fem eller ti mapper som har navn på 10-20 tegn, så kan dette være årsaken til at filen ikke slettes. Faktum er at Windows ikke støtter noen filer hvis navn har mer enn 260 tegn. Hvis denne grensen overskrides, vil feilen som jeg viste ovenfor vises. Antallet mapper med sine egne navn og selve filnavnet skal være mindre enn 260 tegn. Systemet har også en funksjon - hvis denne grensen overskrides, kan vi fortsatt gi nytt navn til mapper. Dette betyr at du må endre navn på alle mapper til et kort navn, for eksempel en bokstav eller et tall.


Dette problemet kan oppstå ikke bare fordi du ga et så langt navn. Dette skjedde med meg da jeg bestemte meg for å laste ned nettstedsfiler fra serveren og gjøre noe. Siden filene ikke lenger var nødvendig, slettet jeg hele katalogen med nettstedfilene, men som det viste seg, inneholdt den en fil med et veldig langt navn, pluss mappenavn, og dette tillot meg ikke å slette alt.

Metode to vil hjelpe hvis den første mislyktes. Faktum er at ikke alle mapper som fører til en fil med et langt navn kan gis nytt navn, og den samme filsystemfeilen vil oppstå. Deretter kan du opprette en virtuell disk ved å bruke hvilken som helst av undermappene som fører til den ikke-slettbare filen. Nå skal jeg vise deg hvordan du gjør dette.

Åpne kommandolinjen. For å gjøre dette, trykk på Win+R-kombinasjonen og skriv inn kommandoen cmd. Du kan klikke Høyreklikk mus på Start-menyen (eller Win+X-tastekombinasjonen) og velg kommandolinjen der.

Nå skriver du en kommando som vil lage en virtuell disk for oss:

Du må velge en stasjonsbokstav som ikke er okkupert av andre. Systempartisjon Vanligvis er bokstavene C indikert, og den andre delen er indikert som D eller E, og velg deretter en annen.

Banen til mappen må spesifiseres fra disken. Hvis dette er vanskelig for deg, åpne mappen som vil fungere som en virtuell disk og kopier stien til den i Utforsker øverst.

Kommandoen min ser slik ut:

Når vi går til Min datamaskin, bør du se en stasjon der med bokstaven som vi tilordnet den fra kommandolinjen. Dermed vil banen til filen reduseres med nesten det halve, noe som betyr at den totale lengden på tegn kan være mindre enn 260 tegn. Nå kan du prøve å bli kvitt det undeleteable.


For å slette en virtuell disk må du skrive inn kommandoen:

substDiskLetter/d

Bruker Total Commander

På Internett oppdaget jeg en metode som lar deg slette filer som ikke kan slettes ved hjelp av . Selvfølgelig er ulempen her at du må installere ekstra programvare på datamaskinen din, og ikke alle vil gjøre dette. I alle fall vil jeg la denne metoden være her i tilfelle noen vil bruke den.

Last ned og installer programmet. La oss gå til fanen "Fil" klikk på delen "Endre attributter". Et vindu vises der vi fjerner hakene fra alle attributter. Hvis det ikke er noen hake ved siden av elementet øverst "Behandle kataloginnhold"- velge. Nå fra det samme programmet prøver vi å slette en fil med et langt navn.


Vi bruker 7-Zip arkiver

For denne oppgaven trenger vi en 7-Zip-arkiver. Høyreklikk på startkatalogen og pek med musen på partisjonen "7-Zip" og velg elementet "Legg til i arkiv".

Et vindu vises der du bare trenger å krysse av i én boks "Slett filer etter komprimering". Klikk deretter OK.

Et arkiv med alt dette opprettes på skrivebordet, og mapper med lange filer slettes ganske enkelt. Du kan slette selve arkivet uten problemer.

Dette er måtene vi har sett på for å fikse filen som ikke blir slettet. Kanskje du har andre alternativer for hvordan du gjør dette?