This commit is contained in:
milisbir 2017-09-07 03:10:34 +03:00
parent b64ae68092
commit f20fe86731
1 changed files with 35 additions and 25 deletions

58
bin/mps
View File

@ -524,12 +524,30 @@ paket_sil_oto(){
paket_sil_oto_onayli(){ paket_sil_oto_onayli(){
local spkt local spkt
cat $1
for spkt in `perl -e 'print reverse <>' $1`;do for spkt in `perl -e 'print reverse <>' $1`;do
paket_sil "$spkt" "hayir" "evet" paket_sil "$spkt" "hayir" "evet"
done done
} }
paket_sil_gerekli(){
ryaz 33 "deneme aşamasında!!!"
bagimli_bilgi_dosyala "$1"
rm -f /tmp/$1.silinecekler
touch /tmp/$1.silinecekler
for pkaltb in $(cat /tmp/$1.gerekler.liste);do
tbsonuc=()
tbsonuc=$(ters_bagimli_bilgi $pkaltb)
if [ ${#tbsonuc[0]} = 0 ];then
ryaz 32 "$pkaltb silinebilir."
echo "$pkaltb" >> /tmp/$1.silinecekler
else
ryaz 31 "$pkaltb silinemez."
fi
done
cat /tmp/$1.silinecekler
paket_sil_oto_onayli "/tmp/$1.silinecekler"
}
paketsiz_talimatlar(){ paketsiz_talimatlar(){
for talimatyol in `( ls -d $talimatname_dizin/genel/* & ls -d $ektalimatname/*/* ) | cat`;do for talimatyol in `( ls -d $talimatname_dizin/genel/* & ls -d $ektalimatname/*/* ) | cat`;do
#echo $talimat #echo $talimat
@ -849,7 +867,7 @@ bagimlilar(){
fi fi
} }
ters_bagimli_bilgi(){ ters_bagimli_bilgi_eski(){
gentalimatlar=$(ls $talimatname_dizin/genel/) gentalimatlar=$(ls $talimatname_dizin/genel/)
for tal in $gentalimatlar;do for tal in $gentalimatlar;do
#echo $tal #echo $tal
@ -865,34 +883,28 @@ ters_bagimli_bilgi(){
done done
} }
ters_bagimli_bilgi_yeni(){ ters_bagimli_bilgi(){
gtbpaket=$1 gtbpaket=$1
tbgdosya=$(mktemp) tbgdosya=$(mktemp)
grep -rli "\s${gtbpaket}\s.*Depends\|Depends.*\s${gtbpaket}\s" $talimatname_dizin > $tbgdosya ; grep -rli "\s${gtbpaket}\s.*Depends\|Depends.*\s${gtbpaket}\s" $talimatname_dizin > $tbgdosya ;
#grep -rli "\s${gtbpaket}\s.*Depends\|Depends.*\s${gtbpaket}\s" $ektalimatname >> $tbgdosya ; grep -rli "\s${gtbpaket}\s.*Depends\|Depends.*\s${gtbpaket}\s" $ektalimatname >> $tbgdosya ;
#grep -rli "\s${gtbpaket}\s.*Depends\|Depends.*\s${gtbpaket}$" $ektalimatname >> $tbgdosya ; grep -rli "\s${gtbpaket}\s.*Depends\|Depends.*\s${gtbpaket}$" $ektalimatname >> $tbgdosya ;
grep -rli "\s${gtbpaket}\s.*Depends\|Depends.*\s${gtbpaket}$" $talimatname_dizin >> $tbgdosya ; grep -rli "\s${gtbpaket}\s.*Depends\|Depends.*\s${gtbpaket}$" $talimatname_dizin >> $tbgdosya ;
cat $tbgdosya | xargs -I {} dirname {} | xargs -I {} basename {} | sort > /tmp/${gtbpaket}.tb.txt ; cat $tbgdosya | xargs -I {} dirname {} | xargs -I {} basename {} | sort > /tmp/${gtbpaket}.tb.txt
rm -f $tbgdosya rm -f $tbgdosya
cat /tmp/${gtbpaket}.tb.txt cat /tmp/${gtbpaket}.tb.txt
rm -rf $tbgdizin
} }
kirik_ters_bagimli_bilgi(){ kirik_ters_bagimli_bilgi(){
gentalimatlar=$(ls $talimatname_dizin/genel/) ters_bagimli_bilgi $1
for tal in $gentalimatlar;do talimatlar=$(cat /tmp/$1.tb.txt)
for tal in $talimatlar;do
#paket kuruluysa kontrolu yapılacak #paket kuruluysa kontrolu yapılacak
if [ -d "$VT/$tal" ];then if [ -d "$VT/$tal" ];then
bagimd=`cat $talimatname_dizin/genel/$tal/talimat | grep "Depends" | cut -d':' -f2`
if [ -n "$bagimd" ]; then
bagimd=`echo "$bagimd" | sed 's/,/ /g'`
for bag in $bagimd;do
if [ $bag = $1 ];then
kirik_kontrol_paket $tal kirik_kontrol_paket $tal
fi fi
done done
fi
fi
done
} }
bagimli_bilgi(){ bagimli_bilgi(){
@ -929,7 +941,7 @@ bagimli_bilgi(){
} }
bagimli_bilgi_dosyala(){ bagimli_bilgi_dosyala(){
rm -f "$1.gerekler.liste" rm -f "/tmp/$1.gerekler.liste"
local bagimd konum bag local bagimd konum bag
bkonum="`find "$talimatname_dizin" -name $1`" bkonum="`find "$talimatname_dizin" -name $1`"
bekkonum="`find "$ektalimatname" -name $1`" bekkonum="`find "$ektalimatname" -name $1`"
@ -948,10 +960,10 @@ bagimli_bilgi_dosyala(){
#echo `echo "$bagimd" | sed 's/,/ /g'` #echo `echo "$bagimd" | sed 's/,/ /g'`
#kurulu kontrollu gosterim #kurulu kontrollu gosterim
for bag in $bagimd;do for bag in $bagimd;do
echo $bag >> "$1.gerekler.liste" echo $bag >> "/tmp/$1.gerekler.liste"
done done
fi fi
echo "$1" >> "$1.gerekler.liste" echo "$1" >> "/tmp/$1.gerekler.liste"
} }
@ -1028,7 +1040,8 @@ etkilenen_kurtar(){
} }
ters_bagimli_kontrol(){ ters_bagimli_kontrol(){
ters_bagimli_bilgi "$1" | sort > tersb.liste ters_bagimli_bilgi $1
cat /tmp/${1}.tb.txt | sort > tersb.liste
ls /var/lib/pkg/DB/ | sed "/$1/d" | sort > simdiki.liste ls /var/lib/pkg/DB/ | sed "/$1/d" | sort > simdiki.liste
comm -12 tersb.liste simdiki.liste comm -12 tersb.liste simdiki.liste
rm tersb.liste simdiki.liste rm tersb.liste simdiki.liste
@ -1889,8 +1902,7 @@ ayarlar() {
paket_sil "$2" "hayir" "evet";; paket_sil "$2" "hayir" "evet";;
### mps -S|silgrub paketismi = ilgili paketi altbağımlılıklarını da sorarak kaldırır. ### mps -S|silgrub paketismi = ilgili paketi altbağımlılıklarını da sorarak kaldırır.
-S|silgrub) -S|silgrub)
mps -bbd "$2" paket_sil_gerekli "$2" ;;
paket_sil_oto_onayli "$2.gerekler.liste" ;;
### mps ara aranan = paket isimleri ve açıklamalarında anahtar kelime arar. ### mps ara aranan = paket isimleri ve açıklamalarında anahtar kelime arar.
-pa|ara) -pa|ara)
paket_ara "$2" ;; paket_ara "$2" ;;
@ -2125,8 +2137,6 @@ ayarlar() {
bagimli_bilgi_dosyala "$2" ;; bagimli_bilgi_dosyala "$2" ;;
-tb|tersbag) -tb|tersbag)
ters_bagimli_bilgi "$2" ;; ters_bagimli_bilgi "$2" ;;
-tb2|tersbag2)
ters_bagimli_bilgi_yeni "$2" ;;
-tbk|--pktbk) -tbk|--pktbk)
ters_bagimli_kontrol "$2" ;; ters_bagimli_kontrol "$2" ;;
-talb|bilgi) -talb|bilgi)