Trucs:Trouver dans quel package rpm se trouve un fichier donné

De Lea Linux
Aller à la navigation Aller à la recherche

Trouver dans quel package rpm se trouve un fichier donné

Fred<fred chez lea linux org>

Vous avez une liste de RPMs dans /mnt/cdrom/Mandrake/RPMS (le cd d'installation de la Mandrake par exemple) et vous souhaitez installez le RPM contenant le fichier 'bidule', mais vous ne savez pas dans quel RPM celui-ci se trouve...

La solution :

for i in /mnt/cdrom/Mandrake/RPMS/*rpm ; do if rpm -qpl $i | grep bidule > /dev/null ; then echo $i ; fi ; done

et voilà ! vive le [/admin/shell.php3 shell] !

Note du modérateur : selon les distributions, les RPMs peuvent se trouver dans d'autres répertoires. Par exemple, pour une Redhat : /mnt/cdrom/Redhat/RPMS, etc.

Note de Maston28 : Plus simplement, avec urpmf sous mandrake, tapez : urpmf bidule.

Par exemple, je recherche le fichier gaim.desktop. Je tape :

[root@mastonland maston28]# urpmf gaim.desktop
gaim:/usr/share/gnome/apps/Internet/gaim.desktop
gaim:/usr/share/applications/gaim.desktop
gaim:/usr/share/applications/gaim.desktop
[root@mastonland maston28]#

Le résultat est de la forme : <nomdupaquet>:<arborescence/vers/le/fichier>.
Dans notre exemple, le fichier en question se situe trois fois dans le paquet gaim.