Aprovechando GNU mv
de -t
opción para especificar el directorio de destino, en lugar de confiar en el último argumento:
find . -name "*" -maxdepth 1 -exec mv -t /home/foo2/bulk2 {} +
Si estuviera en un sistema sin la opción, podría usar un shell intermedio para obtener los argumentos en el orden correcto (find … -exec … +
no admite poner argumentos adicionales después de la lista de archivos).
find . -name "*" -maxdepth 1 -exec sh -c 'mv "[email protected]" "$0"' /home/foo2/bulk2 {} +
Considere mv
ing el directorio principal en lugar de los archivos:
mv /home/foo/bulk /home/foo2/bulk2 && mkdir /home/foo/bulk
(Pero podría causar problemas si /home/foo/bulk
debe existir en todo momento.)