#1 Le 13/03/2020, à 21:17
- ptitjoz
[Résolu] Copier arborescence dossiers mais que avec certains fichiers
Bonjour
j'ai un dossier Musique qui est constitué de beaucoup de sous-dossiers. Dans la plupart de ces sous-dossiers, j'ai des fichiers *.wav et *.mp3
Je souhaiterai faire une copie de de ce dossier Musique en Musique_mp3 dans lequel il y a aurait les mêmes sous-dossiers mais qui ne contiendraient que les mp3.
Avec vous une idée de la faisabilité ?
Merci de vos conseils
Dernière modification par ptitjoz (Le 14/03/2020, à 10:23)
Hors ligne
#2 Le 13/03/2020, à 21:37
- Watael
Re : [Résolu] Copier arborescence dossiers mais que avec certains fichiers
salut,
shopt -s globstar
cp --parents Musiques/**/*.mp3 Musiques_mp3/
?
pas testé.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 13/03/2020, à 21:46
- kamaris
Re : [Résolu] Copier arborescence dossiers mais que avec certains fichiers
Avec rsync :
rsync -av --exclude='*.wav' Musique/ Musique_mp3
Hors ligne
#4 Le 13/03/2020, à 22:19
- nany
Re : [Résolu] Copier arborescence dossiers mais que avec certains fichiers
pas testé.
A môrch’ pô. Ça copie tout à la racine de Musiques_mp3
Avec rsync :
rsync -av --exclude='*.wav' Musique/ Musique_mp3
Pas mal mais ça crée des répertoires vides si les répertoires sources ne contiennent que des .wav.
J’ai bricolé un truc avec find.
find Musique -name "*.mp3" -exec bash -c 'mkdir -pv $(dirname "${1/Musique/Musique_mp3}") && cp -v "$1" $(dirname "${1/Musique/Musique_mp3}")' _ '{}' \;
Dernière modification par nany (Le 13/03/2020, à 22:19)
En ligne
#5 Le 13/03/2020, à 23:56
- Watael
Re : [Résolu] Copier arborescence dossiers mais que avec certains fichiers
plus simplement :
find Musique -name '*.mp3' -exec cp --parents {} Musique_mp3/ \;
?
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#6 Le 13/03/2020, à 23:59
- kamaris
Re : [Résolu] Copier arborescence dossiers mais que avec certains fichiers
kamaris a écrit :Avec rsync :
rsync -av --exclude='*.wav' Musique/ Musique_mp3
Pas mal mais ça crée des répertoires vides si les répertoires sources ne contiennent que des .wav.
C'est vrai. Une manière d'y remédier est de rajouter l'option -m :
rsync -amv --exclude='*.wav' Musique/ Musique_mp3
Et si on ne veut pas seulement exclure les *.wav, mais exclure tout ce qui n'est pas du *.mp3 :
rsync -amv --include='*/' --include='*.mp3' --exclude='*' Musique/ Musique_mp3
Hors ligne
#7 Le 14/03/2020, à 09:42
- ptitjoz
Re : [Résolu] Copier arborescence dossiers mais que avec certains fichiers
Bonjour à chacun(e)
merci pour vos réponses qui sont pertinentes. vous êtes des pros !
donc j'ai utilisé la commande suivante pour mettre directement sur une clé usb
rsync -amv --include='*/' --include='*.mp3' --exclude='*' Musique/ /media/joz/BKUSB001/
.
c'est rapide et efficace ! bravo !
Bonne fin de journée
Hors ligne