Editado
Necesito mover una subcarpeta a otra subcarpeta. Cuando uso este comando:
move e:\rootfolder\sourcefolder c:\rootfolder\destfolder
Yo obtengo Access is denied
.
Observe cómo la unidad de origen es e: y el destino es c:. Creo que el primer respondedor tenía razón al decir que este era el problema con cmd.exe. Le daré algo de tiempo antes de marcar su respuesta.
Respuesta1
Parece que este es el comportamiento esperado (por alguna extraña razón) al intentar mover carpetas entre unidades.
http://technet.microsoft.com/en-us/library/hh849852.aspx
Move-Item moverá archivos entre unidades compatibles con el mismo proveedor, pero moverá directorios solo dentro de la misma unidad.
Sé que ese enlace dice que se aplica a Windows Powershell, pero acabo de probarlo en mi máquina XP aquí en el trabajo y veo exactamente el mismo comportamiento, así que creo que también se aplica a cmd.exe.
Respuesta2
Es un método tortuoso por decir lo menos, pero como me encuentro con esto con frecuencia, se me ocurrió una solución que logra lo mismo sin una gran diferencia de velocidad. Requiere que tengas 7z.exe
(se puede descargar)aquí) instalado y agregado a su ruta. 7z es un archivador de línea de comandos rápido, por lo que esto también se puede hacer con tar.exe
, gzip.exe
etc.
Hago algo como lo siguiente:
7z a x:\destinationfolder\tmp.7z c:\directoryyouwanttomove && ^
7z x x:\destinationfolder\tmp.7z
Reconozco que esto es muy antiguo y no estoy respondiendo específicamente a la pregunta del operador, pero me costó mucho encontrar esto documentado en cualquier lugar y tal vez podría ahorrarle algo de dolor a alguien.