#!/bin/bash

if [ 2$1 == 2-h ] || [ 2$1 == 2--help ] ; then
    echo
    echo Эта команда соберет все deb пакеты в текущем каталоге,
    echo отфильтрует только установленные и предложит переустановить.
    echo Использовать для переустановки пакетов из текущей папки не создавая репозиторий.
    echo
    # install all debs in current dir and install only installed packages
    exit 0
fi

list_inst(){
lst=
for fullname in $(find . -name "*.deb")
do
    filename=${fullname##*/}
    debname=${filename%%_*}
    if $(dpkg -l | grep -q -E "^i.  $debname[ |:]") ; then
        if [ 2$1 != 2-i ] ; then
            lst="$lst $fullname"
        fi
    fi
done
echo $lst
}

apt-get -s -y --reinstall --allow-downgrades install $(list_inst)|grep -vE "Заметьте, |Inst |Conf "
echo "продолжать ? (Y\n)"
read prod
if [ 2$prod != "2y" ] && [ 2$prod != "2" ] && [ 2$prod != "2Y" ]
then
    exit 0
fi
apt-get -y --reinstall --allow-downgrades install $(list_inst)
