Supposons que vous avez un tas de .docx, .mp3, .txtet les .xlsxfichiers stockés dans cette structure de répertoire:
/files/
/files/dir1/
/files/dir1/dir11/
/files/dir1/dir12/
/files/dir1/dir13/
/files/dir2/
/files/dir3/
/files/dir3/dir31/
/files/dir3/dir32/
/files/dir4/
/files/dir5/
/files/dir51/
/files/dir52/
/files/dir53/
/files/dir54/
... et que vous voulez dans récursif tous ces répertoires afin de copier tous trouvés les .mp3fichiers à /home/me/music/mais vous ne pas souhaitez conserver cette arborescence dans la destination (vous voulez que tous trouvés les .mp3fichiers à copier au /home/me/music/lieu de copier dans les répertoires respectifs comme /home/me/music/dir1/, /home/me/music/dir1/dir11/et cetera).
Dans ce cas, sur le terminal shell (bash), exécutez d'abord cette commande afin d'accéder à la racine de votre recherche de fichiers:
cd /files
... puis exécutez cette commande:
for i in `find . -iname '*.mp3'`; do cp $i /home/me/music/; done
Si vous souhaitez conserver l'arborescence du répertoire source dans la destination, exécutez cette commande à la place (après l'exécution cd /files):
find . -iname '*.mp3' | cpio -pdm /home/me/music/
Sur les commandes ci - dessus, la recherche est insensible à la casse (ie matchs .mp3, .MP3, .mP3et .Mp3). Utilisez -nameplutôt que -inamesi vous souhaitez que la recherche soit sensible à la casse (par exemple, l'utilisation -namede la .mp3chaîne de caractères correspondra aux fichiers se terminant par .mp3mais pas à ceux se terminant par .MP3, .mP3ni .Mp3).
-inameplutôt que-namesi des fichiers se terminent.MP3.