Tengo esta estructura de carpetas:
foo
`----> bar
¿Cómo puedo extraer el contenido de bar? en foo ?
Probé mv -f bar/* . desde dentro de foo .
-f, –fuerza | no preguntes antes de sobrescribir
pero obtengo "no se pudo mover bar/ajax a foo/ajax porque el directorio no está vacío”
¿Cómo puedo solucionar esto?
Respuesta aceptada:
mv sobrescribirá archivos, pero se negará a sobrescribir directorios . No hay un solo comando que fusione directorios y elimine los directorios de origen (que es probablemente lo que desea con mv ). Incluso rsync --remove-source-files dejará directorios vacíos.
Puede utilizar una combinación de comandos:
cp -a dev/. .
rm -r dev
que copia todo en dev al directorio actual y luego elimina el dev directorio.
O:
rsync -a --remove-source-files dev/ .
find dev -depth -type d -exec rmdir {} ;
que usa rsync para mover todos los archivos y luego elimina los directorios vacíos que quedan.