#1 Le 09/06/2013, à 20:14
- L0rd3Cook
[Résolu] : Déplaser des fichiers
Bonjour
Voila j'ai un dossier qui contient plus de 10 autre dossier et chacun deux contient d'autre dossier.
c'est dossier contiens tous des fichier en .jpeg
le but est de déplacé toute les fichiers *.jpg sans devoir spécifier toute arborescence qui serai fastidieux. et les mètre dans un dossier sans arborescence.
je vous remercie d’avance.
Dernière modification par L0rd3Cook (Le 10/06/2013, à 18:41)
Hors ligne
#2 Le 09/06/2013, à 20:29
- nesthib
Re : [Résolu] : Déplaser des fichiers
Le code suivant (bash) trouve toutes les fichiers *.jpg dans l'arborescence de dossier1 et les déplace dans dossier2. En cas de fichiers avec le même nom il sera demandé si tu veux écraser le fichier.
Le echo ligne 3 est à enlever pour réellement effectuer le déplacement, tel qu'écrit ci dessous ce morceau de code ne fera qu'afficher la ligne de commande qui serait lancée sans le echo.
while read file
do
echo mv -i "$file" "dossier2/${file##*/}"
done < <(find dossier1 -iname '*.jpg')
Dernière modification par nesthib (Le 09/06/2013, à 22:13)
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#3 Le 09/06/2013, à 20:47
- L0rd3Cook
Re : [Résolu] : Déplaser des fichiers
Bonjour nesthib
Si je comprend bien je doit le terminal et taper :
mv -i $/home/lordcook/website/test/ /home/lordcook/Bureau/Images/${file##*/}"
Dernière modification par L0rd3Cook (Le 09/06/2013, à 20:49)
Hors ligne
#4 Le 09/06/2013, à 21:21
- pingouinux
Re : [Résolu] : Déplaser des fichiers
@nesthib #2 : Pour info, il y a une petite erreur dans la dernière ligne (c'est dossier1 et non dossier2)
Hors ligne
#5 Le 09/06/2013, à 22:13
- nesthib
Re : [Résolu] : Déplaser des fichiers
@pingouinux : Oui bien sûr, j'ai corrigé.
mv -i $/home/lordcook/website/test/ /home/lordcook/Bureau/Images/${file##*/}"
Tu peux soir lancer les lignes retournées par ma commande, soit enlever le « echo » et la relancer. Si tu n'est pas sûr de toi, utilise cp à la place de mv ou fais une sauvegarde préalable de ton dossier.
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#6 Le 09/06/2013, à 22:59
- L0rd3Cook
Re : [Résolu] : Déplaser des fichiers
Bonjour
Il faudrait être plus clair car j'ai fait un copier coller de ce que tu as mi et sa ne marche pas.
pour ce faire je te donne plus de détail
Sur mon Bureau se trouve un dossier nommée : Images
dans mon répertoire personnel : home/lordcook il y as un dossier nommée : websites.
donc cela donne ceci: /home/lordcook/websites.
toute les ficher avec comme extension .jpeg qui se trouve dans dans les différends dossier du dossier websites
Doivent allez dans le dossier appeler Images sur le bureau: /home/lordcook/Bureau/Images.
pourrait tu adapter le code à mon arborescence.
merci d'avence
Hors ligne
#7 Le 09/06/2013, à 23:21
- nesthib
Re : [Résolu] : Déplaser des fichiers
Peux-tu donner le retour de ma première commande (avec le echo) ?
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#8 Le 09/06/2013, à 23:40
- L0rd3Cook
Re : [Résolu] : Déplaser des fichiers
voici
lordcook@Vira-88:~$ mv -i "$file" "dossier2/${file##*/}"
mv: impossible d'évaluer «»: Aucun fichier ou dossier de ce type
lordcook@Vira-88:~$
Hors ligne
#9 Le 09/06/2013, à 23:43
- nesthib
Re : [Résolu] : Déplaser des fichiers
non, le retour de la commande complète :
while read file
do
echo mv -i "$file" "dossier2/${file##*/}"
done < <(find dossier1 -iname '*.jpg')
ou, en une ligne :
while read file ; do echo mv -i "$file" "dossier2/${file##*/}" ; done < <(find dossier1 -iname '*.jpg')
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#10 Le 10/06/2013, à 00:22
- L0rd3Cook
Re : [Résolu] : Déplaser des fichiers
Voici plusieurs teste varier: je tape sa directement dans le terminal.
lordcook@Vira-88:~$ while read file ; do echo mv -i "$file" "dossier2/${file##*/}" ; done < <(find dossier1 -iname '*.jpg')
find: "dossier1": Aucun fichier ou dossier de ce type
lordcook@Vira-88:~$
lordcook@Vira-88:~$ lordcook@Vira-88:~$ while read file ; do mv -i "$file" "dossier2/${file##*/}" ; done < <(find dossier1 -iname '*.jpg')
bash: Erreur de syntaxe près du symbole inattendu « do »
lordcook@Vira-88:~$
lordcook@Vira-88:~$ mv -i "$file" "dossier2/${file##*/}" ; done < <(find dossier1 -iname '*.jpg')
bash: Erreur de syntaxe près du symbole inattendu « done »
lordcook@Vira-88:~$
Hors ligne
#11 Le 10/06/2013, à 00:59
- nesthib
Re : [Résolu] : Déplaser des fichiers
Essaie d'être un peu attentif à ce que tu fais. Tu dois bien évidemment remplacer « dossier1 » par le nom du dossier contenant tes images. De ce que je comprends il s'agit de /home/lordcook/website/test/ ou /home/lordcook/Bureau/Images/
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#12 Le 10/06/2013, à 01:15
- L0rd3Cook
Re : [Résolu] : Déplaser des fichiers
Un tous grand merci, grasse à toi je viens de rajouté 1884 images à mes 1200 images que j'ai fait manuellement ^^
Voila une des raisons pour la quelle j'ai divorcer de windows
Dernière modification par L0rd3Cook (Le 10/06/2013, à 01:36)
Hors ligne
#13 Le 10/06/2013, à 05:27
- nesthib
Re : [Résolu] : Déplaser des fichiers
Pour être objectif, il est aussi possible de faire ça avec windows
Mais il est vrai que c'est tout à fait la philosophie de linux d'utiliser la ligne de commande et d'automatiser les tâches.
Tu peux modifier ton premier message et ajouter [résolu] au début du titre
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#14 Le 10/06/2013, à 12:06
- L0rd3Cook
Re : [Résolu] : Déplaser des fichiers
Bonjour,
Je voudrai toute de même avent de dire que c'est résolu bien que c'est le cas, tu pourrait traduire en langage courent le scriptes, copier coller c'est bien facile mai je n'est rien compris à la commende et j'aime bien comprendre .
Hors ligne
#15 Le 10/06/2013, à 15:18
- tiramiseb
Re : [Résolu] : Déplaser des fichiers
Salut,
J'arrive un peu après la bataille, mais je souhaitais simplement indiquer cette méthode, plus simple :
find <répertoire contenant tous les fichiers dans des sous-répertoires> -iname "*.jpg" -exec mv {} <répertoire destination> \;
Ce qui aurait donné, dans ton cas :
find /home/lordcook/websites -iname "*.jpg" -exec mv {} /home/lordcook/Bureau/Images/ \;
Étonnant d'ailleurs que nesthib ait proposé une boucle while, j'ai cru comprendre qu'il est plutôt bon dans ce domaine... Personne n'est à l'abri d'un manquement quant à la recherche de la solution la plus efficace
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#16 Le 10/06/2013, à 18:10
- L0rd3Cook
Re : [Résolu] : Déplaser des fichiers
Je trouve tous sa fascinent, comme je début sous GNU/Linux je cherche de la bonne documentation en pdf très bien expliquer, personnellement il y a que le terminal qui m'intéresse il y a bien sûr le man mais pour un novice de 3 semaine rien ne veux un bon livre pdf qui explique quasi tous.
Hors ligne
#17 Le 10/06/2013, à 18:11
- tiramiseb
Re : [Résolu] : Déplaser des fichiers
rien ne veux un bon livre pdf
Je dirais plutôt :
rien ne vaut un bon livre papier.
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#18 Le 10/06/2013, à 18:33
- L0rd3Cook
Re : [Résolu] : Déplaser des fichiers
A tu un livre éditeur en particulier qui parle uniquement du mode terminal. j'ai des livre mais il ne parlent que du mode graphique
Dernière modification par L0rd3Cook (Le 10/06/2013, à 18:36)
Hors ligne
#19 Le 10/06/2013, à 18:46
- nesthib
Re : [Résolu] : Déplaser des fichiers
@tiramiseb : ne t'inquiète pas je n'oublie pas find -exec, je voulais juste profiter de la substitution de variable de bash au cas où il y ait un peu plus d'opérations à lancer
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne