Quizás considere usar un método de línea de comando puro para transferir archivos de grandes cantidades, sin duda encontrará que el proceso es sustancialmente más rápido que usar una interfaz gráfica de usuario.
Hay muchas maneras diferentes de lograr esto, pero las siguientes funcionaron de manera rápida, segura y eficiente en mi sistema:
find . -maxdepth 1 -type f -print0 | xargs -0 mv -t <destination>
Alguna explicación para este comando:
- Su directorio de entrada es el '.' carácter y para este comando en particular necesita estar en ese directorio
- Su directorio de salida es el
<destination>
en mi ejemplo. Obviamente modifique esto para satisfacer sus propias necesidades y omita los corchetes.
- Esta sintaxis permite nombres de archivo con espacios como bonificación :)
Son posibles permutaciones infinitas, pero esto debería funcionar bien y de manera mucho más eficiente que la interfaz gráfica de usuario. Una permutación, por ejemplo: si desea mover solo archivos PDF, puede ejecutar:
find . -iname "*.pdf" -maxdepth 1 -type f -print0 | xargs -0 mv -t <destination>
El uso de xargs
abre muchas posibilidades, particularmente con el movimiento de una cantidad tan grande de archivos. Muchas, muchas posibilidades ...
Problemas potenciales:
Hay al menos 2 posibles dificultades para reflexionar, gracias a los comentaristas a continuación por estos pensamientos:
- ¡Su directorio de destino podría estar dañado, en una ubicación inaccesible posteriormente, mal escrito, etc.
mv
aún moverá los archivos allí! Ten cuidado aquí ...
- Si falta la
-t
opción ( --target-directory
) y la carpeta de destino es en realidad un archivo, moverá un archivo y fallará en el resto. mv
tiene 2 usos: cambiar el nombre de la fuente al destino o movimiento fuente de directorio . Nuevamente ten cuidado ...
cp -R SRC/ DEST/
)