Updating packages from a folder

Today I had to update a set of installed packages from a folder, but in that folder there were some deb packages that were not installed and that I did not want to install, so I thought of doing a script that check if that package were installed and if so, update them with the deb file.

Of course, the main issue here is that the deb package name is not the name of the package once installed (the deb is , say samba_1.2.3..deb while the package name would be just samba), so parsing basenames (and taking out the version numbers which where preceded by a _) was the clue here:

for e in $(ls -F | grep -v [/,*]) 
#we'll store in $filename the dpkg package name.
filename=$(echo $e | cut -d_ -f1)
dpkg -l | grep $filename > /dev/null

	if [ $? == 0 ] ; then

		sudo dpkg -i $e
		echo $filename "is not installed, ignored"

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.