Le 22/06/06, Frederic Ollivier<Frederic.Ollivier@???> a écrit :
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
> Pour tester la présence d'un paquet Debian sur une machine dans un
> script Perl, j'ai utilisé :
>
> $PKG_IS_INSTALLED=`/usr/bin/dpkg -l 'nom-du-paquet*' | grep 'ii'`;
>
> if ($PKG_IS_INSTALLED)
> {
> Bla, bla, action ;
> }
>
>
> Ca fait bricolage...
>
>
> Est-ce-qu'il y a une méthode plus "jolie" ?
Même si Perl permet la glue, c'est toujours plus élégant (et rapide :
tu évites un fork) de le faire en Perl lui-même.
Que fait 'dpkg -l' ? Il exstrait tout simplement la liste des paquets
dans /var/lib/dpkg/available...
Voici la one-liner qui fait la même chose :
perl -ne 'print $1, "\n" if ( /^Package: (.*)/ )' /var/lib/dpkg/available
Je te laisse l'écrire dans ton script en beau perl :)
PK
--
|\ _,,,---,,_ Patrice KARATCHENTZEFF
ZZZzz /,`.-'`' -. ;-;;,_ mailto:p.karatchentzeff@free.fr
|,4- ) )-,_. ,\ ( `'-' http://p.karatchentzeff.free.fr
'---''(_/--' `-'\_)