Regularmente uso Node.js para administrar las dependencias de los programas que escribo, no es gran cosa. Hoy terminé con una estructura de carpetas como esta:
Intentando eliminar cualquier archivo se encontró con este error:
Los nombres de los archivos de origen son más grandes de lo que admite el sistema de archivos. Intente trasladarse a una ubicación que tenga un nombre de ruta más corto o cambie el nombre a nombres más cortos antes de intentar esta operación.
Ya estaba en C: \, por lo que no iba a ser mucho más corto.
windows-7
windows
filesystems
Seiyria
fuente
fuente
Respuestas:
Utiliza la herramienta de Microsoft
robocopy.exe
.c:\empty
Luego copie esa carpeta vacía en la carpeta que contiene los nombres de archivo largos que está tratando de eliminar, por ejemplo
c:\myannoyingfolder
. Haga esto así en el símbolo del sistema:robocopy / MIR c: \ empty c: \ myannoyingfolder
fuente
bueno, digamos que quieres eliminar un árbol
D:\very\long\path
, no necesariamente necesitas usar ninguna herramienta como Robocopy.D:\a
D:\very\long\path
D:\a
fuente
Comencé a escribir este problema mientras intentaba una multitud de comandos, incluidos
del /F
yrmdir /S
(además de mantener presionada la tecla Mayús mientras eliminaba para intentar omitir la papelera de reciclaje). Creo que enrmdir /S
realidad eliminó todos los archivos, así que pude continuar con la eliminación de las carpetas que eran nodos de hoja, y luego progresé hacia el árbol unos pocos nodos a la vez. Finalmente los limpié a todos, pero eso fue ridículo.fuente
Puede integrar esta funcionalidad en el shell de Windows. Mi mejora en la respuesta de Flo fue demasiado larga para un comentario.
Agregué un
Delete
comando al menú contextual de Windows.El
delete.reg
archivo agrega entradas de registro para asociar carpetas con elrobodelete.bat
archivo por lotes.delete.reg
robodelete.bat
Nota : es posible que deba cambiar las rutas en ambos archivos según sus preferencias.
ADVERTENCIA : no hay forma de deshacer este comando. ¡No utiliza la papelera de reciclaje y no le pide a Y / N que confirme antes de destruir la carpeta para siempre!
fuente
La herramienta de línea de comandos de código abierto SuperDelete ( GitHub ) funcionó para mí después de que otras opciones fallaran (Windows 10).
fuente
La mejor manera de hacer esto es usar robocopy, lo documenté en mi blog personal para que lo siga:
http://clintboessen.blogspot.com.au/2014/05/how-to-delete-files-which-exceed-255.html
fuente
En muchos casos, el CD en el directorio desde un símbolo del sistema y el uso de DEL funcionarán.
De lo contrario, debe trabajar su nombre ARRIBA en el árbol del directorio: cambie el nombre de la carpeta de nivel más bajo a un nombre más corto (por ejemplo, "a"), luego el siguiente nombre de carpeta más alto, y así sucesivamente, hasta que la ruta total sea lo suficientemente corta. Al trabajar de abajo hacia arriba, siempre manipulas los nombres, que tienen una ruta completa más corta que los archivos finales.
fuente
net use z: c:\path
del z:\*.*
Ajustar en consecuencia. Z: es solo una letra de unidad arbitraria para mapear la ruta ofensiva. Ese último comando de borrado borrará TODO el directorio que haya asignado, por lo tanto, sea más específico según sea necesario.
fuente
Una buena manera es tener Linux de arranque en pendrive y eliminar archivos sin problemas del sistema operativo de CD en vivo .
fuente
También tuve el mismo problema, y lo encontré yo mismo, simplemente cambie el nombre de la carpeta principal lo menos posible. Ex. Si nuestra carpeta en " D " conduce como D: // Folder / Undelete_Folder . Solo una cosa que tiene que hacer es renombrar el nombre de la carpeta principal tan pequeño como, puede renombrarlo como " a ". entonces su ubicación será D: // a / Undelete_folde r. y luego elimine la carpeta principal.
fuente
Si todo lo demás falla
Vaya al Directorio final en la cadena. Cortar los archivos La pegar nuevamente en el 4to o 5to archivo en la Cadena. Entonces [Shift] + [Delete] debería hacer el truco.
Era escéptico para ejecutar lo anterior en el símbolo del sistema elevado ya que estaba eliminando un archivo de restauración de prueba de una copia de seguridad DPM.
espero que esto ayude.
fuente