Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 30/12/2015, à 20:27

mrniko

[Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

Bonsoir,

je ne suis pas très fort en ligne de commande, j'ai lu et relu "mv" sans y arriver... je suis nuuuuuuuul '-(

J'explique :

J'ai photorec qui m'a récupéré dans environ 200 répertoires des JPG, des MP3, des TXT etc

J'aimerais me mettre sur le répertoire principal "/home/user/Images/galleries/photorec/hd_dpata2_nov_2015" et déplacer tous les fichiers.jpg dans "/home/user/Images/galleries/recup_jpg_photorec"


merci de votre aide.

Dernière modification par mrniko (Le 30/12/2015, à 23:53)

Hors ligne

#2 Le 30/12/2015, à 20:58

pingouinux

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

Bonsoir,
Si tu veux récupérer tous les fichiers .jpg de l'arborescence de départ pour les transférer dans un seul répertoire d'arrivée, voici une façon de faire :

shopt -s globstar
mv -i /home/user/Images/galleries/photorec/hd_dpata2_nov_2015/**/*.jpg /home/user/Images/galleries/recup_jpg_photorec

Le répertoire d'arrivée doit exister avant de lancer la commande.

Hors ligne

#3 Le 30/12/2015, à 21:33

MicP

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

Si le répertoire source ne contient que des fichiers .jpg
et si les répertoires source et cible sont dans la même partition,
et si le répertoire cible <=> /home/user/Images/galleries/recup_jpg_photorec n'existe pas,

le plus simple et le plus rapide c'est de déplacer le répertoire source : /home/user/Images/galleries/photorec/hd_dpata2_nov_2015
vers le répertoire cible

mv /home/user/Images/galleries/photorec/hd_dpata2_nov_2015 /home/user/Images/galleries/recup_jpg_photorec

=======
Si le répertoire source ne contient que des fichiers .jpg
et si les répertoires source et cible sont dans la même partition,
et si le répertoire cible <=>  /home/user/Images/galleries/recup_jpg_photorec existe déjà
mais qu'il est vide, il suffira de le supprimer d'abord :

rmdir /home/user/Images/galleries/recup_jpg_photorec && mv /home/user/Images/galleries/photorec/hd_dpata2_nov_2015 /home/user/Images/galleries/recup_jpg_photorec

le && permet à la commande qui suit de n'être exécutée que si la commande qui le précède s'est exécutée sans erreur
(en d'autre mots, si la commande rmdir n'a pu être exécutée, la commande mv ne sera pas lancée)

=======
ATTENTION : Si le répertoire cible est sur un système de fichiers (donc une autre partition) différent du répertoire source, utilise plutôt la commande cp
et ne supprime les fichiers source que lorsque la copie s'est bien terminée :
Vérifie bien que les fichiers ont tous été copiés et qu'ils sont utilisables avant de supprimer les fichiers sources.

=======
EDIT : Il l'avait pourtant bien dit qu'il y avait aussi des MP3 et des TXT… du coup je rectifie.

Dernière modification par MicP (Le 30/12/2015, à 22:27)

Hors ligne

#4 Le 30/12/2015, à 21:46

pingouinux

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

@MicP : Attention, mrniko ne veut apparemment déplacer que les fichier .jpg

Hors ligne

#5 Le 30/12/2015, à 21:54

mrniko

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

pingouinux a écrit :

Bonsoir,
Si tu veux récupérer tous les fichiers .jpg de l'arborescence de départ pour les transférer dans un seul répertoire d'arrivée, voici une façon de faire :

shopt -s globstar
mv -i /home/user/Images/galleries/photorec/hd_dpata2_nov_2015/**/*.jpg /home/user/Images/galleries/recup_jpg_photorec

Le répertoire d'arrivée doit exister avant de lancer la commande.

j'ai eu le droit à :

bash: /bin/mv: Liste d'arguments trop longue

Hors ligne

#6 Le 30/12/2015, à 21:55

mrniko

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

pingouinux a écrit :

@MicP : Attention, mrniko ne veut apparemment déplacer que les fichier .jpg

exactement.


merci

Hors ligne

#7 Le 30/12/2015, à 21:56

pingouinux

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

On peut tenter comme ça, et si ça ne suffit pas, il faudra utiliser find :

cd /home/user/Images/galleries/photorec/hd_dpata2_nov_2015
mv -i **/*.jpg /home/user/Images/galleries/recup_jpg_photorec

Hors ligne

#8 Le 30/12/2015, à 22:07

MicP

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

Effectivement, il n'a pas dit que le répertoire source ne contenait que des fichiers .jpg, et la méthode de déplacement du répertoire ne serait utilisable que si le répertoire source ne contenait que des fichiers .jpg

Il lui faudrait calculer la quantité de données qui sera déplacée en fonction de son choix :

J'exagère juste pour l'exemple :
S'il a 100Gb pour 10000 fichiers .JPG et seulement 5GB pour les 200 fichiers MP3+TXT,
il gagnera beaucoup de temps en sortant les fichiers MP3 et TXT du répertoire source d'abord,
et en déplaçant juste le répertoire dans lequel il ne resterait que des images.

Ça a l'air de rien, mais si on fait pas gaffe, ça peut devenir une véritable galère
qui finit parfois par un triste : "Plus de place dans le répertoire cible …" ou et  "Le fichier xxxx n'a pas pu être déplacé" ou/et "lecture du fichier xxxx.jpg impossible"

Et le plus grave dans tout ça, c'est que t'as la copine qui s'impatiente… smile

Hors ligne

#9 Le 30/12/2015, à 22:07

mrniko

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

même erreur...

Hors ligne

#10 Le 30/12/2015, à 22:11

mrniko

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

Faut que je fasse ceci ?

 find . -name "*.jpg" -exec mv -i *.jpg /home/user/Images/galleries/recup_jpg_photorec

Hors ligne

#11 Le 30/12/2015, à 22:12

mrniko

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

j'ose pas lancer...

Hors ligne

#12 Le 30/12/2015, à 22:12

pingouinux

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

find /home/user/Images/galleries/photorec/hd_dpata2_nov_2015 -name \*.jpg -exec echo mv -i {} /home/user/Images/galleries/recup_jpg_photorec \;

et enlever le echo si c'est bon.

@MicP : Effectivement, selon la répartition des fichiers, ta méthode peut être une alternative

Hors ligne

#13 Le 30/12/2015, à 22:38

MicP

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

@pingouinux Merci smile

Hors ligne

#14 Le 30/12/2015, à 23:53

mrniko

Re : [Résolu] Déplacer tous les fichiers d'un type vers un autre répertoire

pingouinux a écrit :
find /home/user/Images/galleries/photorec/hd_dpata2_nov_2015 -name \*.jpg -exec echo mv -i {} /home/user/Images/galleries/recup_jpg_photorec \;

et enlever le echo si c'est bon.

@MicP : Effectivement, selon la répartition des fichiers, ta méthode peut être une alternative

PARFAIT ! merci !!!

Hors ligne