Select Git revision
10_Features.md
-
Hahn Axel (hahn) authoredHahn Axel (hahn) authored
apt.sh 1.75 KiB
#!/bin/bash
# ===============================================================
#
# PACKAGE MANAGER: APT
# Debian, Ubuntu
#
# included by ../check_packages2install
#
# ---------------------------------------------------------------
# ah <axel.hahn@unibe.ch>
# 2022-06-03 v1.0 ah first version
# 2022-06-07 v1.1 ah remove text "Nothing to install"
# rename functions
# 2022-10-21 v1.3 ah remove grep: warning: stray \ before white space
# 2023-10-20 v1.4 ah harden sudo command execution
# ===============================================================
# ---------------------------------------------------------------
# command to list of updates
function apt.getUpdates(){
sudo -n apt-get -u upgrade --assume-no
}
# ---------------------------------------------------------------
# extract list of packages 2 install
# global string packagemanOut output of update lister command
function apt.getPackageList(){
# detect number of line containing "The following packages will be upgraded:"
typeset -i local iStart
iStart=$( echo "$packagemanOut" | grep -n '^The following packages will be upgraded:' | cut -f 1 -d ':' )
if [ $iStart -gt 0 ]; then
# show packages = text starting with 2 spaces below start line
# packages are delimited with space -> replace with new line
echo "$packagemanOut" | sed -n $iStart,\$p | grep "^ " | sed "s#^\ \ ##g" | tr " " "\n"
fi
}
# ---------------------------------------------------------------
# get status line on apt based systems (debian, ubuntu)
# global string packagemanOut output of update lister command
function apt.getStatusLine(){
echo "$packagemanOut" | grep "upgraded.*installed"
}
# ---------------------------------------------------------------