removido
(usa Nenhuma)
Enviado em 02/03/2010 - 15:48h
meu grande problema agr seria comparar as versões dos programas instalados
no diretorio /var/db/pkg eu tenho varios diretorios com os nomes e versões dos programas instalados
ex:
.
.
.
gnome2-2.26.3
gnome_subr-1.0
gnomehier-2.3_12
gnupg-2.0.14
gnutls-2.8.3
gobject-introspection-0.6.7
gok-2.26.0_1,
.
.
.
e no script tem algo assim
==========================
#!/usr/local/bin/bash
for i in `curl
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/amd64/packages-8.0-release/All/ | awk '{print $9}'` ; do
PROGRAMA=`echo $i | rev | cut -f2-10 -d- | rev`
VERSAO=`echo $i | rev | cut -f1 -d- | cut -f2-10 -d. | rev`
VERSAO2=[0-9].[0-9]
EXISTE=`ls -d "$DB$PROGRAMA-$VERSAO"`
echo "$EXISTE"
done
==============================================
ou seja, a variavel $i que está no for, vai ter o valor dos pacotes que estão no servidor, como eu comparo isso??
sendo que os nomes e versões tem um padrão muito diferente um do outro
ex:
gnome2-2.26.3
gnome_subr-1.0
gnomehier-2.3_12
gnupg-2.0.14
gnutls-2.8.3
gobject-introspection-0.6.7
gok-2.26.0_1,1
gpac-libgpac-0.4.5_2,1
gperf-3.0.3
gpgme-1.2.0_2
graphviz-2.24.0_1
gsfonts-8.11_5
gsl-1.12
gstreamer-0.10.26
gstreamer-ffmpeg-0.10.8
gstreamer-plugins-0.10.25_1,3
ou seja, alguns coloca "," no final ou "_" "." e por ai vai, como eu faço isso??
eu sei que teria que fazer uma filtragem, ateh o primeiro ponto eu verifico isso, depois eu verifico aquilo e por ai vai
mas sou muito ruim em usar o sed,awk e por ai vai