Déplacer fichier de plusieurs dossier vers un seul

Rigaudon

Membre enregistré
10 Janvier 2011
4
0
Bonjour à tous !
Je vais expliquer mon "problème" en détail. Je pense qu'on peut le résoudre en maîtrisant bien les commandes du Terminal — ce qui n'est pas (encore) mon cas.
J'ai un dossier "ornements1" dans lequel il y a une série de dossiers "pagXYZ" (où X, Y et Z sont des chiffres) dans lesquels il y a des images "XYZAB.tif" (où X, Y et Z sont les mêmes chiffres que dans "pageXYZ" et A et B deux autres, correspondant, vous l'aurez deviné, aux numéro des images sur chaque page). Exemple : "ornements1/page001/00101.tif" serait la première image de la première page, "ornements1/page147/14712.tif" la 12e image de la page 147.
Comme vous le voyez, ce système implique plein de dossiers, et il est redondant, puisque le numéro de la page est dans le nom du dossier ET dans le nom du fichier. :sleep:
Mon but : supprimer les dossiers pages, pour avoir des chemins "ornements/00101.tif", "ornements/17412.tif"... "ornements/XYZAB.tif".
Comment faire donc pour copier le contenu de tous les dossiers "ornements1/pagXYZ" où X, Y et Z varient, vers un seul dossier "ornements" ?
Merci d'avance pour votre aide ! Si en plus vous donnez quelques petites explications sur les commandes utilisées, j'en serai très heureux : ça me permettra (peut-être) de comprendre :) !
 
Bonjour,

Dans le Terminal :

tape cd et un espace
glisse/dépose le dossier "ornements1" dans la fenêtre.
Presse la touche Entrée.

Copie et colle ce texte
Bloc de code:
find . -mindepth 2 -name '*.tif' -exec mv -f {} . \;
Presse la touche Entrée.


find . le point est le dossier spécifié avec la commande cd, find = recherche
-mindepth 2 égale le deuxième niveau de profondeur, pour ne pas rechercher dans le dossier "ornements1", donc la recherche commence dans les sous-dossiers du dossier "ornements1" .
-name '*.tif' recherche les fichiers dont le nom se termine par ".tif".

-exec mv exécute la commande pour déplacer le fichier tif
-f option qui écrase le fichier ayant le même nom, -n pour ne pas écraser mais le fichier ne sera pas déplacé.
{} est le fichier en entrée (tif)
. est le dossier de destination ("ornements1")
\; est la fin de la commande -exec
 
Génialissime ! Merci ! Évidemment, ça fonctionne très bien. Quel gain de temps ! Merci beaucoup !

Et à par ça, ça fait quoi dans "Applications", ce topic ? Les manipulations de fichiers/dossiers, c'est pas de la bureautique ! On déménage.