[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: un script pour traitement par batch



Bernard wrote:
Bonjour à tous,

Je souhaite copier à part un certain nombre de fichiers choisis dans un répertoire. Sur les 1200 fichiers que contient ce répertoire, j'en ai sélectionné un peu plus de 400 de la liste, et j'ai éliminé les autres... Je les éliminés d'une liste récupérée via 'ls -l > nomliste.txt', et non pas du répertoire ou d'une copie de celui-ci, ce qu'il aurait mieux valu que je fasse. Ce tri sur la liste m'ayant pris plusieurs heures de travail fastidieux, j'espère éviter de devoir le recommencer sur le contenu du répertoire. En fait, comme cette liste représentait déjà une sélection du contenu dudit répertoire, c'est environ 12500 fichiers qu'il me faudrait à nouveau trier.

Comment copier, à partir de cette liste ? S'il ne s'était agit que d'une ou deux douzaines de fichiers, je n'eusse pas été embarrassé de faire 2 ou 3 douzaines de fois la manip suivante :

cp /mnt/exthd/copié_collé_du_nom_du_fichier.sdm /home/mydir

xargs -i cp /mnt/exthd/{} /home/mydir < nomliste.txt

Attention : ça ne marchera pas si tu as des espaces dans les noms de fichier ! Si c'est le cas, il faut changer la variable IFS.

	François.

PS : si la sélection des fichiers pouvait se traduire en règles, un petit tour vers l'aide de find aurait pu être intéressante...


Reply to: