Considerar:
ls -al ../public-back
drwxrwxr-x 4 apache apache 4096 Apr 19 03:32 templates
ls -al ../public-back/templates
drwxrwxr-x 2 apache apache 4096 Apr 19 03:33 content
drwxrwxr-x 2 apache apache 20480 Apr 20 06:14 images
drwxrwxr-x 2 apache apache 4096 Apr 19 03:35 video
ls -al /public
drwxrwxr-x 4 apache apache 4096 Apr 20 09:49 templates
ls -al /public/templates
drwxrwxr-x 2 apache apache 4096 Apr 20 09:50 content
drwxrwxr-x 2 apache apache 4096 Apr 20 09:50 images
drwxrwxr-x 2 apache apache 4096 Apr 20 09:50 video
¿Cómo muevo el contenido de forma /public-back/templates
recursiva con permisos /public/templates
?
linux
command-line
mv
siliconpi
fuente
fuente
mv -R ../public-back/templates/* public/templates/
Todavía votaría para mover la pregunta.Respuestas:
A menos que esté malinterpretando la pregunta, esto funcionaría:
Además, a menos que tenga una gran lista de archivos, agregar
-i
preguntará antes de sobrescribir cualquier cosa, lo que agrega cierta seguridad al usar comodines como*
.fuente
Directory not empty
mensaje.mv: target '/public/templates' is not a directory
basta con crear la carpeta de destino manualmente:mkdir /public/templates
.La página del manual para cp dice:
Tratar;
fuente
mv
es para moverse , mientras quecp
es para copiar : una distinción semántica / etimológica.cp
es la forma más lenta quemv
.cp
obliga a la computadora a copiar todo desde el disco a la RAM y luego volver a escribirlo en el disco, lo que puede llevar mucho tiempo dependiendo del tamaño de los archivos. Sin embargo,mv
siempre ocurre instantáneamente porque solo los enlaces deben reescribirse.Al mover elementos de mi memoria USB a mi sistema OSMC, he encontrado lo siguiente muy útil:
Explicación sobre cómo funciona a continuación.
Por cierto, no olvides agregar una barra diagonal inversa antes de cualquier espacio en los nombres de directorio de origen o destino (ver arriba).
Efectivamente, está encontrando todos los archivos y todas las carpetas y moviéndolos uno por uno (o si primero se encuentra un directorio, está moviendo ese directorio y los contenidos que contiene). Esto inicia un nuevo proceso para cada movimiento y es muy ineficiente. Solo use esto cuando los comandos regulares fallan.
fuente
mv no parece hacer esto. Pero puedes usar este pequeño truco, funciona como un encanto:
y conserva los permisos y todo.
Nota: ninguno de los anteriores funcionó para mí, es por eso que esta solución.
fuente
Así que cree enlaces duros en el directorio de destino y elimine el directorio de origen. 'mv' simplemente no funcionará en su caso, y en general solo funciona cuando el directorio fuente y el destino no tienen subárboles comunes.
Tenga en cuenta que supongo que la palabra 'mover' en la pregunta significa que el directorio de origen debería desaparecer después de la operación.
fuente