Jak smazat nesmazatelné soubory či adresáře
Čas od času se spoustě mých známých s operačním systémem Windows stane, že se jim někde (většinou na ploše) objeví soubor či složka, která nejde smazat.
Příznaky
Typickým příznakem při pokusu o smazání je chybové hlášení "Položka nenalezena", "Položku nelze nalézt" nebo "Soubor se již nenachází v CESTA_K_SOUBORU, ověřte cestu k souboru a zkuste to znovu". (Hlášení v češtině neznám, volně přeloženo, nicméně v originále se jedná o potíže "Item Not Found", "Could not find this item" nebo "This item is no longer located in PATH_TO_FILE. Verify the item location and try again".
Mnoho návodů a tutoriálů vás odkáže na práva, nouzový režim nebo aplikace typu Unlocker.
Ani jedno z řešení však nepomůže a soubory stále nelze smazat.
Většinou za ně může aplikace nebo instalátor aplikace s přístupem k příkazové řádce.
Typicky pak tyto soubory nebo složky obsahují buďto whitespace (prázdné znaky) ve svém názvu, případně začínají či končí tečkou. Technicky za to mohou Windows svým přístupem k manipulaci se soubory, ale o tom tento příspěvek není.
Jak to opravit?
Pro smazání takových problémových souborů je nutné použít příkazovou řádku (cmd) a tzv. Extended Path Format (formát cesty k souboru obsahuje \\?\
prefix).
Pokud tedy máte na ploše nesmazatelnou složku s názvem "problém", by standardní postup pro mazání:
rd /s "C:\Users\Public\Desktop\problém"
Tento příkaz však selže se stejnou chybou, jako běžné delete nebo pokus o smazání v menu pravého tlačítka.
Místo toho použijte příkaz:
rd /s "\\?\C:\Users\Public\Desktop\problém"
Který takto nesmazatelný soubor bez problémů odstraní.