Shell Script - Compare packages. rpm
Tiago Dias <[email protected]> Mon, 26 Jan 2009 08:35:40 -0200
| Newsgroups | gmane.linux.redhat.devel |
|---|---|
| Message-ID | <[email protected]> |
--===============1203942072==
Content-Type: multipart/alternative; boundary=0016e65097fed20e4d0461604c91
--0016e65097fed20e4d0461604c91
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Hi,
I need a script which makes the package compa=E7=E3o rpm's through=
two
text files ...
Since a file is the output of the command *rpm-qa > pkg.out *
And the second file is a list of several packages rpm's, multiple
versions and architectures.
My idea is to compare a package *x* file pkg.out with several
packages *y* of the file update.out and know whether a package and has a
larger version of the package *x* installed and with that I return I have a
package to be updated.
Does anyone can help me do this comparison?
OBS.: The servers do not have access to internet.
Here's an example of the packages described in the files:
[root@rpm tiago]# tail -n12 pkg.out
glibc-devel-2.3.4-2.39
libuser-devel-0.52.5-1.el4.1
libmudflap-4.1.2-14.EL4
iiimf-libs-devel-12.1-13.EL.6
xorg-x11-devel-6.8.2-1.EL.33
lam-libs-7.1.2-8
libdbi-0.6.5-10.RHEL4.1
unixODBC-kde-2.2.11-1.RHEL4.1
perl-Compress-Zlib-1.42-1.el4
MySQL-python-1.2.1_p2-1.el4.1
nmap-3.70-1
sysstat-5.0.5-16.rhel4
[root@rpm tiago]#
--
[root@rpm tiago]# cat update.out
glibc-devel-2.3.4-2.41.i386.rpm
glibc-devel-2.3.4-2.39.i386.rpm
glibc-devel-2.3.4-2.36.i386.rpm
glibc-devel-2.3.4-2.25.i386.rpm
glibc-devel-2.3.4-2.19.i386.rpm
glibc-devel-2.3.4-2.13.i386.rpm
glibc-devel-2.3.4-2.9.i386.rpm
glibc-devel-2.3.4-2.i386.rpm
libuser-devel-0.52.5-1.el4.3.i386.rpm
libuser-devel-0.52.5-1.el4.1.i386.rpm
libuser-devel-0.52.5-1.i386.rpm
libmudflap-4.1.2-42.EL4.i386.rpm
libmudflap-4.1.2-14.EL4.i386.rpm
libmudflap-4.1.1-53.EL4.i386.rpm
libmudflap-4.1.0-18.EL4.3.i386.rpm
libmudflap-4.1.0-18.EL4.i386.rpm
libmudflap-4.0.2-14.EL4.i386.rpm
libmudflap-4.0.1-4.EL4.2.i386.rpm
libmudflap-4.0.0-0.14.EL4.i386.rpm
xorg-x11-devel-6.8.2-1.EL.52.i386.rpm
xorg-x11-devel-6.8.2-1.EL.33.0.4.i386.rpm
xorg-x11-devel-6.8.2-1.EL.33.0.2.i386.rpm
xorg-x11-devel-6.8.2-1.EL.33.0.1.i386.rpm
xorg-x11-devel-6.8.2-1.EL.33.i386.rpm
xorg-x11-devel-6.8.2-1.EL.31.i386.rpm
xorg-x11-devel-6.8.2-1.EL.19.i386.rpm
xorg-x11-devel-6.8.2-1.EL.18.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.37.7.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.37.5.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.37.2.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.37.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.36.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.25.1.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.25.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.20.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.16.i386.rpm
xorg-x11-devel-6.8.2-1.EL.13.6.i386.rpm
xorg-x11-devel-6.8.1-23.EL.i386.rpm
lam-libs-7.1.2-15.el4:2.i386.rpm
lam-libs-7.1.2-8:2.i386.rpm
MySQL-python-1.2.1_p2-1.el4.1.i386.rpm
MySQL-python-1.0.0-1.RHEL4.1.i386.rpm
sysstat-5.0.5-19.el4.i386.rpm
sysstat-5.0.5-16.rhel4.i386.rpm
sysstat-5.0.5-15.0.1.el4.i386.rpm
sysstat-5.0.5-14.rhel4.i386.rpm
sysstat-5.0.5-11.rhel4.i386.rpm
sysstat-5.0.5-7.rhel4.i386.rpm
sysstat-5.0.5-1.i386.rpm
nmap-3.70-1:2.i386.rpm
[root@rpm tiago]#
Att,
--=20
Tiago Dias da Silva
Administrador de Sistemas GNU/Linux
HomePage: www.dias.eti.br
Email: [email protected]
"A mente que se abre a uma nova id=E9ia jamais voltar=E1 ao seu tamanho
original"
(Albert Einstein)
--0016e65097fed20e4d0461604c91
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Hi,<br><br> I need a script=
which makes the package compa=E7=E3o rpm's through two text files ...=
=20
<br>
<br> Since a file is the ou=
tput of the command <b>rpm-qa > pkg.out=20
</b><br>
<br> And the second file is=
a list of several packages rpm's, multiple versions and architectures.=
=20
<br>
<br> My idea is to compare =
a package <b><i>x</i></b> file pkg.out with several packages <i><b>y</b></i=
> of the file update.out and know whether a package and has
a larger version of the package <i><b>x</b></i> installed and with that I r=
eturn I have a package to be updated. <br>
<br> Does anyone can help me do t=
his comparison?=20
<br>
<br> OBS.: The servers do not hav=
e access to internet.<br><br> Her=
e's an example of the packages described in the files:<br clear=3D"all"=
><br>[root@rpm tiago]# tail -n12 pkg.out<br>glibc-devel-2.3.4-2.39<br>
libuser-devel-0.52.5-1.el4.1<br>
libmudflap-4.1.2-14.EL4<br>iiimf-libs-devel-12.1-13.EL.6<br>xorg-x11-devel-=
6.8.2-1.EL.33<br>lam-libs-7.1.2-8<br>libdbi-0.6.5-10.RHEL4.1<br>unixODBC-kd=
e-2.2.11-1.RHEL4.1<br>perl-Compress-Zlib-1.42-1.el4<br>MySQL-python-1.2.1_p=
2-1.el4.1<br>
nmap-3.70-1<br>sysstat-5.0.5-16.rhel4<br>[root@rpm tiago]#<br><br>--<br><br=
>[root@rpm tiago]# cat update.out<br>glibc-devel-2.3.4-2.41.i386.rpm<br>gli=
bc-devel-2.3.4-2.39.i386.<div>rpm<br>glibc-devel-2.3.4-2.36.i386.rpm<br>
glibc-devel-2.3.4-2.25.i386.rpm<br>
glibc-devel-2.3.4-2.19.i386.rpm<br>glibc-devel-2.3.4-2.13.i386.rpm<br>glibc=
-devel-2.3.4-2.9.i386.rpm<br>glibc-devel-2.3.4-2.i386.rpm<br>libuser-devel-=
0.52.5-1.el4.3.i386.rpm<br>libuser-devel-0.52.5-1.el4.1.i386.rpm<br>libuser=
-devel-0.52.5-1.i386.rpm<br>
libmudflap-4.1.2-42.EL4.i386.rpm<br>libmudflap-4.1.2-14.EL4.i386.rpm<br>lib=
mudflap-4.1.1-53.EL4.i386.rpm<br>libmudflap-4.1.0-18.EL4.3.i386.rpm<br>libm=
udflap-4.1.0-18.EL4.i386.rpm<br>libmudflap-4.0.2-14.EL4.i386.rpm<br>libmudf=
lap-4.0.1-4.EL4.2.i386.rpm<br>
libmudflap-4.0.0-0.14.EL4.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.52.i386.rpm=
<br>xorg-x11-devel-6.8.2-1.EL.33.0.4.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.=
33.0.2.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.33.0.1.i386.rpm<br>xorg-x11-de=
vel-6.8.2-1.EL.33.i386.rpm<br>
xorg-x11-devel-6.8.2-1.EL.31.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.19.i386.=
rpm<br>xorg-x11-devel-6.8.2-1.EL.18.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.1=
3.37.7.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.13.37.5.i386.rpm<br>xorg-x11-d=
evel-6.8.2-1.EL.13.37.2.i386.rpm<br>
xorg-x11-devel-6.8.2-1.EL.13.37.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.13.36=
.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.13.25.1.i386.rpm<br>xorg-x11-devel-6=
.8.2-1.EL.13.25.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.13.20.i386.rpm<br>
xorg-x11-devel-6.8.2-1.EL.13.16.i386.rpm<br>xorg-x11-devel-6.8.2-1.EL.13.6.=
i386.rpm<br>xorg-x11-devel-6.8.1-23.EL.i386.rpm<br>lam-libs-7.1.2-15.el4:2.=
i386.rpm<br>lam-libs-7.1.2-8:2.i386.rpm<br>MySQL-python-1.2.1_p2-1.el4.1.i3=
86.rpm<br>
MySQL-python-1.0.0-1.RHEL4.1.i386.rpm<br>sysstat-5.0.5-19.el4.i386.rpm<br>s=
ysstat-5.0.5-16.rhel4.i386.rpm<br>sysstat-5.0.5-15.0.1.el4.i386.rpm<br>syss=
tat-5.0.5-14.rhel4.i386.rpm<br>sysstat-5.0.5-11.rhel4.i386.rpm<br>sysstat-5=
.0.5-7.rhel4.i386.rpm<br>
sysstat-5.0.5-1.i386.rpm<br>nmap-3.70-1:2.i386.rpm<br>[root@rpm tiago]#<br>=
<br>Att,</div><br clear=3D"all"><br>-- <br>Tiago Dias da Silva<br>Administr=
ador de Sistemas GNU/Linux<br>HomePage: <a href=3D"http://www.dias.eti.br">=
www.dias.eti.br</a><br>
Email: <a href=3D"mailto:[email protected]">[email protected]</a><br>  =
; <br>"A mente que se abre a uma nova id=
=E9ia jamais voltar=E1 ao seu tamanho original" <br><br>(Albert Einste=
in)<br>
--0016e65097fed20e4d0461604c91--
--===============1203942072==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
Redhat-devel-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/redhat-devel-list
--===============1203942072==--