dev/bash/delunpack/delunpack3.sh

38 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# Упрощённый вариант программы по удалению
# keep=`(cat exclude_base.lst;cat /var/lib/debfoster/keepers)|sort|uniq`
keep=`(cat exclude_base2.lst;cat /var/lib/debfoster/keepers)|sort|uniq`
for p in `dpkg -l| grep "ii "|cut -d ' ' -f3`; do
echo "Рассматривается пакет $p"
echo "$keep"|grep "$p" >/dev/null
if [[ "$?" == "0" ]]; then
echo "$p нужен пользователю";
continue
fi
can_remove=true
for p2r in `apt-get -s -y remove "$p"| grep Remv|cut -d ' ' -f2` ; do
echo "Проверяется возможность удаления пакета $p2r"
echo "$keep"|grep -E "\<$p2r\>" >/dev/null
if [[ "$?" == "0" ]]; then
echo "$p2r нужен пользователю";
can_remove=false
break;
fi
done
if [[ "$can_remove" == "true" ]]; then
if [[ "`dpkg-query -W -f='${Priority}\n' $p`" == "optional" ]]; then
echo "$p нужен пользователю"
else
echo "delunpack3.sh: Удаляем пакет $p"
echo "$p" >>1.txt #
#apt-get -y remove --purge $p
fi
fi
dpkg --configure -a
done