mps-tespit
This commit is contained in:
parent
797a367575
commit
bd573d616a
30
bin/mps
30
bin/mps
|
@ -1217,21 +1217,22 @@ dongu_gosterge(){
|
||||||
}
|
}
|
||||||
|
|
||||||
t_indeks(){
|
t_indeks(){
|
||||||
|
# karşılaştırma dosyası -talimatname indeks dönüşü verecek
|
||||||
[ -z $1 ] && exit 1
|
[ -z $1 ] && exit 1
|
||||||
local dosya_t="$1"
|
local dosya_t="$1"
|
||||||
|
# talimat listesi
|
||||||
local dosya=`mktemp`
|
local dosya=`mktemp`
|
||||||
local dosya_sirasiz=`mktemp`
|
local dosya_sirasiz=`mktemp`
|
||||||
|
|
||||||
[ -f $dosya ] && rm -rf $dosya
|
find ${talimatname}/temel/* -type d > $dosya
|
||||||
find /root/talimatname/temel/* -type d > $dosya
|
find ${talimatname}/genel/*/* -type d >> $dosya
|
||||||
find /root/talimatname/genel/*/* -type d >> $dosya
|
|
||||||
|
|
||||||
while IFS='' read -r konum || [[ -n "$konum" ]]; do
|
while IFS='' read -r konum || [[ -n "$konum" ]]; do
|
||||||
|
|
||||||
# Surum-Devir
|
# Surum-Devir
|
||||||
isim=$(basename $konum)
|
isim=$(basename $konum)
|
||||||
#surum=$(grep -ri ^"surum=" $konum/talimat | cut -d '=' -f2 | awk '{ sub(/[ \t]+$/, ""); print }')
|
#surum=$(grep -ri ^"surum=" $konum/talimat | cut -d '=' -f2 | awk '{ sub(/[ \t]+$/, ""); print }')
|
||||||
|
# sürüm ve devir değişkenlerinin olası boşluklarının kırpılması
|
||||||
surum=$(grep -ri ^"surum=" $konum/talimat | cut -d '=' -f2 | tr -d [:space:])
|
surum=$(grep -ri ^"surum=" $konum/talimat | cut -d '=' -f2 | tr -d [:space:])
|
||||||
devir=$(grep -ri ^"devir=" $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
|
||||||
|
@ -1270,28 +1271,37 @@ k_indeks(){
|
||||||
echo "$isim@$surum-$devir" >> $dosya_sirasiz
|
echo "$isim@$surum-$devir" >> $dosya_sirasiz
|
||||||
|
|
||||||
done < "$dosya"
|
done < "$dosya"
|
||||||
|
# alfabetik sıralama
|
||||||
sort $dosya_sirasiz > $dosya_k
|
sort $dosya_sirasiz > $dosya_k
|
||||||
echo "kurulu_sira: $dosya"
|
|
||||||
rm -f $dosya_sirasiz
|
rm -f $dosya_sirasiz
|
||||||
}
|
}
|
||||||
|
|
||||||
guncelleme_tespit(){
|
guncelleme_tespit(){
|
||||||
|
# talimatname indeks dosyası
|
||||||
local dosya_t=`mktemp`
|
local dosya_t=`mktemp`
|
||||||
|
# kurulum indeks dosyası
|
||||||
local dosya_k=`mktemp`
|
local dosya_k=`mktemp`
|
||||||
local dosya_kurs=`mktemp`
|
# kuruluma göre sıralı paket listesi
|
||||||
|
local dosya_ks=`mktemp`
|
||||||
|
# güncellenecek paket listesi sırasız
|
||||||
local dosya_g=`mktemp`
|
local dosya_g=`mktemp`
|
||||||
local dosya_son=`mktemp`
|
local dosya_son=`mktemp`
|
||||||
|
local dosya_sonuc=`mktemp`
|
||||||
t_indeks $dosya_t &
|
t_indeks $dosya_t &
|
||||||
k_indeks $dosya_k $dosya_kurs &
|
k_indeks $dosya_k $dosya_ks &
|
||||||
wait $(jobs -p)
|
wait $(jobs -p)
|
||||||
#set -x
|
#set -x
|
||||||
|
# talimatname ve kurulu sürüm-devir indeks dosya karşılaştırılması
|
||||||
grep -vxFf $dosya_t $dosya_k > $dosya_g
|
grep -vxFf $dosya_t $dosya_k > $dosya_g
|
||||||
sed -i 's/$/@/' $dosya_kurs
|
# paketleri çekmek için satır sonu @ ekleme
|
||||||
|
sed -i 's/$/@/' $dosya_ks
|
||||||
for _gunc in $(cat $dosya_g);do
|
for _gunc in $(cat $dosya_g);do
|
||||||
_gunc2=$(echo ${_gunc} | cut -d'@' -f1)
|
_gunc2=$(echo ${_gunc} | cut -d'@' -f1)
|
||||||
grep -nr "${_gunc2}@" $dosya_kurs > $dosya_son
|
grep -nr "^${_gunc2}@" $dosya_ks >> $dosya_son
|
||||||
done
|
done
|
||||||
cat $dosya_son | cut -d':' -f2
|
# güncellenecek paketlerin-kurulum sırasına göre sıralanıp, sadeleştirilmesi
|
||||||
|
sort $dosya_son | cut -d':' -f2 | cut -d'@' -f1 > $dosya_sonuc
|
||||||
|
rm @dosya_t @dosya_k @dosya_ks @dosya_g @dosya_son
|
||||||
}
|
}
|
||||||
|
|
||||||
sistem_guncelle_uygula(){
|
sistem_guncelle_uygula(){
|
||||||
|
|
Loading…
Reference in New Issue