GNU/Linux >> Tutoriels Linux >  >> Linux

Quelle est la manière la plus efficace de déplacer un grand nombre de fichiers qui résident dans un seul répertoire ?

Tirer parti de GNU mv est -t option pour spécifier le répertoire cible, au lieu de s'appuyer sur le dernier argument :

find . -name "*" -maxdepth 1 -exec mv -t /home/foo2/bulk2 {} +

Si vous étiez sur un système sans l'option, vous pourriez utiliser un shell intermédiaire pour obtenir les arguments dans le bon ordre (find … -exec … + ne prend pas en charge l'insertion d'arguments supplémentaires après la liste des fichiers).

find . -name "*" -maxdepth 1 -exec sh -c 'mv "[email protected]" "$0"' /home/foo2/bulk2 {} +

Considérez mv ing le répertoire parent au lieu des fichiers :

mv /home/foo/bulk /home/foo2/bulk2 && mkdir /home/foo/bulk

(Mais cela pourrait causer des problèmes si /home/foo/bulk doit exister à chaque instant.)


Linux
  1. Comment compter le nombre de fichiers dans chaque répertoire ?

  2. Trouver les fichiers qui ont été modifiés au cours des dernières 24 heures

  3. Quel est le moyen le plus rapide de déplacer un million d'images d'un répertoire à un autre sous Linux ?

  4. Recherche des fichiers qui utilisent le plus d'espace disque

  5. Un moyen plus rapide de supprimer un grand nombre de fichiers

Trouver des fichiers volumineux sous Linux

Comment déplacer un grand nombre de fichiers sous Linux

Reformatage d'un grand nombre de fichiers XML ?

Linux :rechercher le nombre de fichiers dans un répertoire et des sous-répertoires

find :les chemins doivent précéder l'expression :comment spécifier une recherche récursive qui trouve également des fichiers dans le répertoire courant ?

Compter le nombre de fichiers dans un répertoire avec une commande de terminal OSX