Me gustaría saber cómo puedo mover todos los archivos de una carpeta a otra carpeta con una línea de comando.
Digamos que estoy en mi carpeta de Descargas y hay 100 archivos que me gustaría mover a mi carpeta de Videos, sin tener que escribir el nombre de todos los archivos.
command-line
Miguel
fuente
fuente

filespero las personas te muestran cómo hacerlo no solofilessinofolderstambién. ¿Eso esta bien?Respuestas:
Abra una terminal y ejecute este comando:
Moverá todos los archivos y carpetas de la carpeta Descargas a la carpeta Videos.
Para mover todos los archivos, pero no las carpetas:
Si está interesado en mover todos los archivos (pero no las carpetas) de la carpeta Descargas a la carpeta Videos, use este comando
Para mover solo archivos de las carpetas de Descarga, pero no de las subcarpetas:
Si desea mover todos los archivos de la carpeta Descargas, pero no los archivos dentro de las carpetas de la carpeta Descargas, use este comando:
aquí, la
-maxdepthopción especifica qué tan profundo debe intentar la búsqueda profunda, es1decir, solo el directorio especificado en el comando de búsqueda. Puedes intentar usar2,3también para probar.Consulte la página de manual de búsqueda de Ubuntu para obtener una explicación detallada
fuente
-print0 | xargs -0 mv -t ~/Videospuede hacer de manera más eficiente con-exec mv -t ~/Videos \{\} \+:-)mv -v ~/Downloads/* ~/Videos/no funciona para archivos ocultosMoverá todos los archivos, incluidas las subcarpetas, en el directorio que desee
mv. Si deseacp(copiar) orm(eliminar) necesitará la-ropción (recursiva) para incluir subcarpetas.fuente
mvno necesita una opción recursiva para incluir subcarpetas. Se puede usar también para renombrar.Para el caso simple:
Si también quiere mover archivos dot (ocultos), configure la opción de shell dotglob .
Esto deja establecida la opción de shell.
Para usar dotglob una vez, ejecute los comandos en una subshell:
fuente
(shopt -s dotglob; mv ~/Downloads/* ~/Videos)solo mueve (corta) el contenido (incluidos los archivos ocultos). En este caso, las carpetas de origen y de destino ya deben existir. Al final, el directorio de origen queda vacío.Es posible usando
rsync, por ejemplo:dónde:
Si tiene privilegios de root, prefije con
sudopara anular posibles problemas de permisos.fuente
Utilizar
Espero que esto ayude. Porque tuve el mismo dolor y perdí mucho tiempo arreglando mi error.
fuente
Para mover un directorio con o sin contenido a su nuevo nombre, tal como usaría el
mvcomando para cambiar el nombre de un archivo:mv -T dir1 dir2dónde:
-Ttrata el destino como un archivo normaldir1es el nombre original del directoriodir2es el nuevo nombre del directorioNB:
dir2no tiene que existir.Espero que esto ahorre mucho tiempo a alguien, como novato, antes de esto, crearía un directorio con el nuevo nombre y luego movería el contenido del directorio al directorio creado anteriormente.
Uso para subdirectorios
Este comando es útil cuando se han guardado muchos archivos en una subcarpeta del directorio de destino, es decir
Downloads/mp4. En este ejemplo, la ejecuciónmv -T Downloads/mp4 Videosdará como resultado la eliminación de lamp4subcarpeta y todos los archivos contenidos dentro se moverán a la carpeta Videos.fuente
dir1que se elimine. Además de esta precaución, esta respuesta ha notado algo bueno para el uso diario.mv fileA fileBpero la-Tbandera en este caso trata el directorio / destino como un archivo y lo renombra.cd folderNameherepwd. Esto imprimirá el directorio que desea mover también.cd folderNameheremv *.* typeAnswerFromStep2hereEso moverá todos los archivos de ese directorio al otro.
fuente
foo.txt,bar.ybartantobar.ybarno se moverá. Usar en*lugar de*.*se encarga de eso. Pero en ambos casos, los archivos ocultos como:.foobarno se moverán.aquí debe colocar una barra diagonal y una
*ruta posterior a la fuente para que tome los archivos dentro de source_path en lugar del directorio fuente completo.Ejemplo:
mv /home/username/test/* /home/username/test2/El comando anterior mueve todos los archivos (a menos que estén ocultos) en el directorio de origen al directorio de destino.
fuente
intentalo
-type con el argumento -type puede especificar el tipo file.on esta declaración que es el archivo medio. si usa -d que significa directorio.
-iname: el método más común y obvio para buscar un archivo es usar su argumento -name. si no está seguro de su distinción entre mayúsculas y minúsculas, puede usar el argumento -iname
mv {} y finalmente especificar el directorio de destino y luego mover los archivos allí usando el argumento mv {}
fuente