mps-tespit

This commit is contained in:
milisbir 2018-10-18 13:33:42 +03:00
parent 05a3ddbaa6
commit 0692865503
1 changed files with 26 additions and 13 deletions

39
bin/mps
View File

@ -1234,7 +1234,7 @@ t_indeks(){
#surum=$(grep -ri ^"surum=" $konum/talimat | cut -d '=' -f2 | awk '{ sub(/[ \t]+$/, ""); print }')
surum=$(grep -ri ^"surum=" $konum/talimat | cut -d '=' -f2 | tr -d [:space:])
devir=$(grep -ri ^"devir=" $konum/talimat | cut -d '=' -f2 | tr -d [:space:])
echo "$isim -> $surum-$devir" >> $dosya_sirasiz
echo "$isim@$surum-$devir" >> $dosya_sirasiz
done < "$dosya"
sort $dosya_sirasiz > $dosya_t
@ -1242,44 +1242,57 @@ t_indeks(){
}
k_indeks(){
# karşılaştırma dosyası -sıralı dönüş verecek
[ -z $1 ] && exit 1
# sistemde kurulum sıralı dosya dönüş verecek
[ -z $2 ] && exit 1
local dosya_k="$1"
local dosya=`mktemp`
local dosya="$2"
local dosya_sirasiz=`mktemp`
[ -f $dosya ] && rm -rf $dosya
ls -d $VT/* > $dosya
ls -rct $VT > $dosya
for _esgec in `echo ${esgec} | tr " " "\n"`;do
_satirno=$(grep -wxnr "$VT/${_esgec}" ${dosya} | cut -d':' -f1)
_satirno=$(grep -wxnr "${_esgec}" ${dosya} | cut -d':' -f1)
[ ! -z ${_satirno} ] && sed -i "${_satirno}d" ${dosya}
done
while IFS='' read -r konum || [[ -n "$konum" ]]; do
while IFS='' read -r kpaket || [[ -n "$kpaket" ]]; do
# Surum-Devir
satir=$(sed -n '1p' < $konum/META)
satir=$(sed -n '1p' < $VT/${kpaket}/META)
isim=${satir:1:${#satir}-1}
satir=$(sed -n '7p' < $konum/META)
satir=$(sed -n '7p' < $VT/${kpaket}/META)
surum=${satir:1:${#satir}-1}
satir=$(sed -n '8p' < $konum/META)
satir=$(sed -n '8p' < $VT/${kpaket}/META)
devir=${satir:1:${#satir}-1}
echo "$isim -> $surum-$devir" >> $dosya_sirasiz
echo "$isim@$surum-$devir" >> $dosya_sirasiz
done < "$dosya"
sort $dosya_sirasiz > $dosya_k
rm -f $dosya $dosya_sirasiz
echo "kurulu_sira: $dosya"
rm -f $dosya_sirasiz
}
guncelleme_tespit(){
local dosya_t=`mktemp`
local dosya_k=`mktemp`
local dosya_kurs=`mktemp`
local dosya_g=`mktemp`
t_indeks $dosya_t &
k_indeks $dosya_k &
k_indeks $dosya_k $dosya_kurs &
wait $(jobs -p)
set -x
grep -vxFf $dosya_t $dosya_k
grep -vxFf $dosya_t $dosya_k > $dosya_g
for _kurulu in $(cat $dosya_kurs);do
for _gunc in $(cat $dosya_g);do
if [ "${_gunc}@" =~ "^${_kurulu}" ];then
echo ${_gun}
sed -i '/${_gun}/d' $dosya_g
fi
done
done
}
sistem_guncelle_uygula(){