Bonjour,
Pour commencer, si ce sujet est mal placé, je m'en excuse... Si quelqu'un trouve une manière plus efficace est plus rapide d'arriver au même résultat... aussi.
Alors voilà ma problématique initiale :
Comment rechercher dans mon pc, un film ou une musique à partir d'une partie de son nom, sachant que :
- Ce n'est pas forcément rangé parfaitement
- J'ai des caractères accentués ou pas
- J'ai des majuscules ou pas
- Les fichiers sont potentiellement sur un montage réseau
J'utilise la commande locate, qui est grâce à l'utilisation d'un index bien plus rapide que find. Par contre il faut éventuellement faire un petit tour dans sa conf associée si vous voulez atteindre des montages réseaux :
Par exemple pour moi, j'ai retiré le mot clé cifs de la ligne PRUNEFS, à vous d'adapter ou pas votre fichier en fonction de vos besoins.
Dans le fichier /etc/updatedb.conf :
- L'option --transliterate permet de rechercher le mot clé avec/sans les accents. Si je recherche "ete", les mots réellement recherchés seront "ete","été","éte","ète","ête",...
- L'option -i permet de ne pas être sensible à la casse
- Le pipe permet d'envoyer le retour de la commande locate à un second filtrage en grep
- La deuxième partie de la commande permet de filtrer les résultats sur des extensions (donc les dernières lettres du fichiers, d'où le $
Ce qui donne en exemple :
Pour commencer, si ce sujet est mal placé, je m'en excuse... Si quelqu'un trouve une manière plus efficace est plus rapide d'arriver au même résultat... aussi.

Alors voilà ma problématique initiale :
Comment rechercher dans mon pc, un film ou une musique à partir d'une partie de son nom, sachant que :
- Ce n'est pas forcément rangé parfaitement
- J'ai des caractères accentués ou pas
- J'ai des majuscules ou pas
- Les fichiers sont potentiellement sur un montage réseau
J'utilise la commande locate, qui est grâce à l'utilisation d'un index bien plus rapide que find. Par contre il faut éventuellement faire un petit tour dans sa conf associée si vous voulez atteindre des montages réseaux :
Par exemple pour moi, j'ai retiré le mot clé cifs de la ligne PRUNEFS, à vous d'adapter ou pas votre fichier en fonction de vos besoins.
Dans le fichier /etc/updatedb.conf :
PRUNE_BIND_MOUNTS="yes"
# PRUNENAMES=".git .bzr .hg .svn"
PRUNEPATHS="/tmp /var/spool /media /var/lib/os-prober /var/lib/ceph /home/.ecryptfs /var/lib/schroot"
#retrait cifs pour nas
PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs devtmpfs fuse.mfs shfs sysfs1 lustre tmpfs usbfs udf fuse.glusterfs fuse.sshfs curlftpfs ceph fuse.ceph fu
se.rozofs ecryptfs fusesmb"
Et voici surtout les lignes que j'ai ajoutées dans mon ~/.bashrcfunction locatefilm () { locate --transliterate -i "$1" | grep -i '\.mkv$\|\.avi$\|\.mts$\|\.mpg$\|\.mp4$\|\.flv$\|\.ts$\|\.wmv$\|\.mov$\|\.divx$\|\.xvid$\|\.mka$\|\.mks$' ; }
function locatemusic () { locate --transliterate -i "$1" | grep -i '\.mp3$\|\.flac$$\|\.wav$$\|\.wma$$\|\.ogg$$\|\.ogv$$\|\.oga$$\|\.ogx$$\|\.aac$' ; }
function locatebook () { locate --transliterate -i "$1" | grep -i '\.pdf$\|\.epub$\|\.djvu$\|\.doc$\|\.xdoc$\|\.ppt$\|\.pptx$\|\.xls$\|\.xlsx$\|\.odp$\|\.odt$\|\.ods$' ; }
Quelques explications s'imposents peut-être.- L'option --transliterate permet de rechercher le mot clé avec/sans les accents. Si je recherche "ete", les mots réellement recherchés seront "ete","été","éte","ète","ête",...
- L'option -i permet de ne pas être sensible à la casse
- Le pipe permet d'envoyer le retour de la commande locate à un second filtrage en grep
- La deuxième partie de la commande permet de filtrer les résultats sur des extensions (donc les dernières lettres du fichiers, d'où le $
Ce qui donne en exemple :
toto@tardis:~$ locatefilm asterix
/data/share/dd/FilmsHD/asterix.le.domaine.des.dieux.2014.french.1080p.bluray.x264-goatlove.mkv
/data/share/dd/FilmsHD/Asterix.Et.Obelix.Mission.Cleopatre.2002.FRENCH.1080p.BluRay.x264-FHD/Asterix.Et.Obelix.Mission.Cleopatre.2002.FRENCH.1080p.BluRay.x264-FHD.mkv
/data/share/downloads/films/Asterix 1986 Asterix Chez Les Bretons 1080p-Yan Ric.mp4
/data/share/downloads/films/Asterix.Le.Secret.de.la.Potion.Magique.2018.FRENCH.720p.BluRay.DTS.x264-Ulysse.mkv
/data/share/downloads/films/Astérix & Cléopatre (1968) (Film Complet) (1080p HD)-DamM01.mkv
/data/share/downloads/films/Astérix Le Gaulois (1967) (Film HD 1080p)-DamM01.mkv
/data/share/downloads/films/Astérix et la surprise de césar (1985) HD 1080p-rayan leroi.mp4
/data/share/downloads/films/Les 12 travaux d'Astérix (1976) HD-rayan leroi.mkv
toto@tardis:~$ locatemusic penitencier
/data/share/media/Music/Johnny Hallyday/Triple Best of Johnny Hallyday Disc 1/06 Le Pénitencier.mp3
/data/share/media/Music/Johnny Hallyday - L'album de sa vie 100 titres/76 Le pénitencier.mp3
/data/share/media/Music/Johnny History - La Légende (Remasterisé)/CD2/Johnny Hallyday - Le pénitencier.mp3
/data/share/media/Music/On A Tous Quelque Chose De Johnny 2017-zava/09 - Le penitencier.mp3
/data/share/media/Music/Sylvie Vartan - Avec toi/8 Le pénitencier.mp3
/data/share/media/Music/hallydaylivebruxelles/Johnny Hallyday - Le pénitencier (Live au Palais 12 - Bruxelles - 2016).mp3
toto@tardis:~$ locatebook linux
/home/toto/Documents/Books/Informatique/Hacknotes - Linux And Unix Security Portable Reference (2003).pdf
/home/toto/Documents/Books/Informatique/Michael Kerrisk-The Linux programming interface_ a Linux and UNIX system programming handbook-No Starch Press (2010).epub
/home/toto/Documents/Books/Informatique/Michael Kerrisk-The Linux programming interface_ a Linux and UNIX system programming handbook-No Starch Press (2010).pdf
/home/toto/Documents/Books/Informatique/UNIX and Linux System Administration Handbook.pdf
/home/toto/Documents/Books/Informatique/UNIX_and_Linux_System_Administration_Handbook_5e.pdf
/home/toto/Documents/Books/Informatique/ten-steps-to-linux-survival.pdf
/home/toto/Documents/Books/Informatique/Michael Kerrisk/Michael Kerrisk-The Linux programming interface_ a Linux and UNIX system programming handbook-No Starch Press (2010).epub
/home/toto/Documents/Books/Informatique/Michael Kerrisk/Michael Kerrisk-The Linux programming interface_ a Linux and UNIX system programming handbook-No Starch Press (2010).pdf
Si quelqu'un veut compléter ou améliorer ces commandes, il est le bienvenu. :cool: