Windows 7 Elimina la struttura delle cartelle pesantemente nidificata [duplicato]


8

Stavo eseguendo uno script del nodo che è andato storto e ho creato una struttura di cartelle in questo modo:

\myfolder
    \myfolder
    \file.txt
        \myfolder
            \file.txt
                \myfolder
                \file.txt
                    \etc.

Questo è nidificato in misura superiore a 300 volte, stimerei, se non di più.

Non posso delperché è un percorso di file troppo lungo.

Non posso usarlo robocopyperché in realtà si blocca su questo punto:

inserisci qui la descrizione dell'immagine

Non riesco a usare FileAssassinin quanto è solo per i file apparentemente.

Ho provato a utilizzare lo script .bat da questa risposta. Come posso eliminare una cartella nidificata abbastanza in profondità ed evitare "Nome file troppo lungo"? , ed è ancora in esecuzione, ma temo a livello di ricorsione che la cartella sia anche se ogni singola sottocartella fosse rinominata in un carattere sarebbe comunque più lunga di 260 (o qualunque sia il limite).

Come lo rimuovo problemdal mio filesystem?

MODIFICARE

DeepRemove ha successo! Vittoria! 3.421 livelli di ricorsione. Jeesh! Starò più attento con nodejs (o qualsiasi modifica programmatica del filesystem) d'ora in poi, esp. quando è coinvolta la ricorsione!


Hai provato a eliminare la cartella principale?
and31415,

@ and31415 sì. il percorso del file è troppo lungo perché Windows possa gestirlo da solo.
Aristide,

2
Forse qualcuno troverà una soluzione migliore, ma per quanto riguarda l'avvio su un Live-CD GNU / Linux, il montaggio della partizione di Windows e solo rmla directory problematica? Penso che il limite del percorso dei file di Linux sia molto più lungo di quello di Windows, quindi potrebbe funzionare.

@ André che potrebbe funzionare, ma è probabilmente la mia ultima risorsa.
Aristide,

@Aristides Sì, solo per essere sicuro. Ora sarebbe interessante sapere cosa ha effettivamente creato il problema in primo luogo.
and31415,

Risposte:



1

Per i posteri condivido la soluzione di SiloSix .

Ha creato un file bat per spostare la struttura delle cartelle ed eliminare piccoli blocchi alla volta. È semplice e bello. (Avevo anche diverse migliaia di cartelle da gestire.)

Ha funzionato sul mio problema in meno di 2 minuti.

REM https://superuser.com/users/151251/silosix
D:

REM  CD deep into the problem directory...
cd D:\a\calculator.sikuli\calculator.sikuli\calculator.sikuli\calculator.sikuli

REM Move the rest of the problem dir to a temporary parent folder
move /-Y calculator.sikuli D:\b

REM CD to the temp folder
cd D:\b

REM delete the section of problem-dir above
rd /s/q D:\a\calculator.sikuli

REM Move the rest of problem-dir back to origin
move /-Y calculator.sikuli D:\a

REM Call the script until problem directory is gone!
call D:\remdirs2.bat

I tag REM sono solo commenti, possono essere lasciati o eliminati a piacere. (Nel caso in cui la prossima persona a trovarlo non sia esperto di bat scripting.)


Penso che DeepRemove sia una soluzione più semplice, esp. qualcuno che non è esperto nell'uso della riga di comando.
Aristide,

2
@Aristides Al momento in cui mi sono imbattuto in questo il mio problema di directory è stato risolto utilizzando lo script batch, quindi non ero in grado di testare DeepRemove. Tuttavia, alcuni altri strumenti creati per risolvere lo stesso problema non avevano funzionato. Quindi ho pensato che ripubblicare la sceneggiatura potesse essere utile per chiunque si fosse imbattuto in questo. :)
Squish,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.