#!/bin/sh
#
# Versione del 2001-10-02
#
# Estrae tutte le info dai package *.rpm su /cd e li invia su stdout
# Come parametro indicare la directory dove risiedono i pacchetti.
# Genera il rapporto su stdout.
progname=$( basename $0 )
function usage()
{
echo
echo "Usage: $progname
"
}
if [ $# -ne 1 ]; then
echo "$progname: Bad parameters" >&2
usage
exit 1
fi
if [ ! -d "$1" ]; then
echo "$progname: $1: not a directory" >&2
usage
exit 1
fi
function estrai() {
while read -r p ; do
echo
echo "----------------------------------------------------------"
echo "Package `basename "$p"` :"
echo "----------------------------------------------------------"
# quell'imbranato di rpm fa il word splitting anche se racchiudo
# il nome del file tra doppi apici; rimediamo:
sp=$( echo "$p" | sed 's/ /\\ /g' )
echo -e "\nINFO ON $p:"
rpm -qpi -- "$sp"
echo -e "\nFILES ON $p:"
rpm -qpls --provides -- "$sp"
#echo -e "\nDEPENDENCIES OF $p:"
#rpm -qp --requires $sp
done
}
find "$1" -name "*.rpm" | estrai | sed 's/(no state) *//'