diff --git a/scripts/getInfo b/scripts/getInfo index 1f5c219..942a7d7 100755 --- a/scripts/getInfo +++ b/scripts/getInfo @@ -1,7 +1,7 @@ #!/bin/bash -version=2.57.1 -date="6/12/2017" +version=2.58.0 +date="7/12/2017" projet="simpledeb" contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues/" script="getInfo" @@ -464,7 +464,7 @@ f_dspl_md(){ # 3/12/2017 echo -e "$display2" } - # $1=liste fichier(s) à grepper, [$2]: N &| nofile &| novide &| ligneVide &| date &| commentXY + # $1=liste fichier(s) à grepper, [$2]: N &| nofile &| novide &| ligneVide &| date &| commentXY &| sources # si aucun fichier dans la liste retour: 'nofile|vide|inexistant' # /!\ protéger les chemins avec " (surtout si plusieurs chemins ou joker) # option largeur, chiffres AU DÉBUT! @@ -474,10 +474,12 @@ f_dspl_md(){ # 3/12/2017 # option 'lignevide', pas de suppression des lignes vides # option 'date', date de modification du fichier # option 'commentXY', OPTION FINALE! commentaire supplémentaire à filtrer, ex: comment// + # option 'sources' affiche les sources en "colonne" (3 premières col: largeur maxi) # ex. cumul option: "10 novide nofile lignevide" (espace obligatoire, pas d'autre séparateur) # cmd de base: grep -Ersv '^#|^$' file|dossier "options" -f_grep_file(){ # 3/12/2017 - local file content display='' motif +f_grep_file(){ # 7/12/2017 + local file content display='' motif col1=0 col2=0 col3=0 col4=0 un deux trois quatre + # motif de base "^[[:blank:]]*#|^[[:blank:]]*$" motif="^[[:blank:]]*#" [[ ! "$2" =~ lignevide ]] && motif+="|^[[:blank:]]*$" [[ "$2" =~ comment ]] && comment=${2##*comment} # on garde les symboles de commentaires à la fin @@ -491,6 +493,19 @@ f_grep_file(){ # 3/12/2017 !/^[[:blank:]]*$/ { printf "%-"larg"s",$1; $1=""; printf "%s\n",$0 } # exclut ligne vide ' <<< "$content") fi + if [[ "$2" =~ sources ]]; then + content=$( + while read un deux trois quatre; do + [ ${#un} -gt "$col1" ] && col1=$(( ${#un}+1 )) + [ ${#deux} -gt "$col2" ] && col2=$(( ${#deux}+1 )) + [ ${#trois} -gt "$col3" ] && col3=$(( ${#trois}+1 )) + [ ${#quatre} -gt "$col4" ] && col4=$(( ${#quatre}+1 )) + done <<< "$content" + while read un deux trois quatre; do + [ "$un" ] && printf "%-"$col1"s %-"$col2"s %-"$col3"s %-"$col4"s \n" "$un" "$deux" "$trois" "$quatre" + done <<< "$content" + ) + fi [ -d "$file" ] && file+='/' # si répertoire, ajout / final, joli content=${content//$file} # joli, suppression de $file dans les noms de fichiers entete grep # mise en forme @@ -931,7 +946,7 @@ fi_dmesg(){ # 2/12/2017 f_dspl_alrt "$alert_firmBug" "alert" } -fi_efi(){ # 1/12/2017 +fi_efi(){ # 6/12/2017 local efiboot text [ $( f__which efibootmgr ) ] || return 0 # pas d'efi @@ -940,7 +955,7 @@ fi_efi(){ # 1/12/2017 ! /^Boot0/ { print $0 } ' <<< $( efibootmgr -v 2>/dev/null ) ) ### - f_pr titre2 "EFI boot manager" + f_pr titre2 "EFI boot" f_di cmd "$efiboot" "efibootmgr -v" "config EFI boot" } @@ -1144,10 +1159,10 @@ fi_gpu_openGl(){ # 28/11/2017 openGl=${openGl::-1} } -fi_hw(){ # 1/12/2017 +fi_hw(){ # 6/12/2017 [ "$fg_hw" ] || figet_hw ### - f_pr titre2 "hardware monitor acpi" + f_pr titre2 "hardware monitor" f_di sans "$fg_hw" "sans" f_pr 1 "pas d'informations détectées" '[ -z "$fg_hw" ]' f_pr flush @@ -1494,7 +1509,7 @@ fi_packagers(){ #v2 23/11/2017 fi } -fi_pkg_apt(){ #v3 5/12/2017 +fi_pkg_apt(){ #v3 7/12/2017 local dateMaj nb_packages ifile info_update text pluriel local sources cmt_sources cmd_sources local apt_v apt_version apt_prefs cmt_apt_prefs cmd_apt_prefs @@ -1507,11 +1522,12 @@ fi_pkg_apt(){ #v3 5/12/2017 local non_ii qte_non_ii cmt_non_ii cmd_non_ii etat ligne stck_etat local deborphan qte_deborphan cmt_deborphan cmd_deborphan local holded qte_holded cmt_holded cmd_holded + local metaPkg cmd_metaPkg cmt_metaPkg kernel cmd_kernel cmt_kernel local alert_https alert_httpsPossible alert_non_list alert_httpredir alert_upgrade alert_full_upgrade local alert_apt alert_remove alert_autoclean alert_clean alert_non_ii alert_deborphan # sources - sources=$( f_grep_file "/etc/apt/sources.list /etc/apt/sources.list.d/*.list" 8 ) + sources=$( f_grep_file "/etc/apt/sources.list /etc/apt/sources.list.d/*.list" sources ) cmt_sources="dépôts" cmd_sources="grep -Ersv '^#|^$' /etc/apt/sources.list /etc/apt/sources.list.d/*.list" if [ $( ls -1 /etc/apt/sources.list.d/ | grep -cEv '\.list$' ) -gt 0 ]; then @@ -1527,7 +1543,7 @@ fi_pkg_apt(){ #v3 5/12/2017 cmt_apt_prefs="préférences apt" if [ "$1" == "confOnly" ]; then local apt_unUpgrd cmd_unUpgrd cmd_apt_history essai - shopt -s extglob + # shopt -s extglob # apt_unUpgrd=$( f_grep_file "/etc/apt/apt.conf.d/!(*.save)" "comment//" ) apt_unUpgrd=$( f_grep_file "/etc/apt/apt.conf.d/50unattended-upgrades" "comment//" ) cmd_unUpgrd="grep -Erv '^//|^$' /etc/apt/apt.conf.d/50unattended-upgrades" @@ -1541,7 +1557,7 @@ fi_pkg_apt(){ #v3 5/12/2017 #f_di cmd "$( cat /var/log/apt/history.log | tail -n25 )" "cat /var/log/apt/history.log | tail -n25" "25 derniers historiques apt" #f_di sans "$( f_grep_file "/var/log/unattended-upgrades/*.log" )" IFS=$'\n' - essai=($(cat /var/log/apt/history.log | grep -B1 -A2 'unattended-upgrade')) +# essai=($(cat /var/log/apt/history.log | grep -B1 -A2 'unattended-upgrade')) # for i in "${!essai[@]}"; do # for i in /var/log/unattended-upgrades/* ; do # done @@ -1719,6 +1735,13 @@ fi_pkg_apt(){ #v3 5/12/2017 cmt_holded="$qte_holded paquet"$pluriel" figé"$pluriel [ "$qte_holded" -eq 0 ] && cmt_holded=${cmt_holded/0 /aucun } cmd_holded="apt-mark showhold" + # kernel + metaPkg=$( dpkg -l | grep -i -E 'linux-(image|headers)-([0-9]{3}|amd)' ) + cmd_metaPkg="dpkg -l | grep -i -E 'linux-(image|headers)-([0-9]{3}|amd)'" + cmt_metaPkg="métapaquet noyau" + kernel=$( dpkg -l | grep -i -E "linux-(headers|image)-$(uname -r)" ) + cmd_kernel="dpkg -l | grep -i -E \"linux-(headers|image)-$(uname -r)\"" + cmt_kernel="noyau" ### f_pr titre2 "gestion de paquets ${1#*:}" f_pr 1 "nombre de paquets installés: **$nb_packages**" @@ -1750,6 +1773,8 @@ fi_pkg_apt(){ #v3 5/12/2017 f_dspl_alrt "$alert_deborphan" "info" fi f_di cmd:vide "$holded" "$cmd_holded" "$cmt_holded" + f_di cmd "$metaPkg" "$cmd_metaPkg" "$cmt_metaPkg" + f_di cmd "$kernel" "$cmd_kernel" "$cmt_kernel" } fi_pkg_x(){ #v2 1/12/2017 @@ -1850,11 +1875,11 @@ fi_reseau(){ # 1/12/2017 ( configuration ) interfaces=$( f_grep_file "/etc/network/interfaces*" ) interfaces=$( sed -E 's/wpa-psk [[:graph:]]+/wpa-psk /; s/:/: /' <<< $interfaces ) resolv=$( f_grep_file "/etc/resolv.conf" "notitre" ) - # iwconfig + # iwconfig (/sbin) if [ $( f__which iwconfig ) ]; then #paquet wireless-tools requis iwconfig=$( LC_ALL=C iwconfig 2>&1 | grep -v 'no wireless extensions' | grep -v '^[[:space:]]*$' ) fi - # iwlist + # iwlist (/sbin) if [ $( f__which iwlist ) ]; then # canal wifi utilisé; /sbin, paquet wireless-tools requis canal_wifi=$( LC_ALL=C iwlist chan 2>&1 | grep 'Current Frequency' | grep -Eio 'channel [0-9]+' ) fi @@ -1976,7 +2001,11 @@ fi_system(){ # 6/12/2017 [ "$fu_archi" ] || f__architecture echo -n "ø" # divers système - [ -d /sys/firmware/efi ] && mbr="EFI" || mbr="Legacy (mbr)" + if [ -d /sys/firmware/efi ]; then + mbr="EFI" + else + mbr="Legacy (mbr)" + fi uname=$( uname -rmo ) bootImage=$( gawk '{print $1}{i=2; while (i <= NF-1) { print " ",$i; i++}}' /proc/cmdline ) initDaemon=$( ps -p1 | gawk 'FNR==2 {print $4}' ) #? ps -ax | gawk '$1==1' ou ps -p1 | gawk '$1==1' @@ -3821,7 +3850,7 @@ prg_2(){ # traitements principaux 1/12/2017 fi if [[ "$1" == all || "$1" =~ c ]]; then #configuration #debian, packages -cc fi_conf echo -e "# ▷ Configuration" >> "$fileOutput" - for i in fi_locale fi_conf fi_vrms fi_packagers ; do + for i in fi_efi fi_locale fi_conf fi_vrms fi_packagers ; do echo -n "•" $i done @@ -3835,7 +3864,7 @@ prg_2(){ # traitements principaux 1/12/2017 fi if [[ "$1" == all || "$1" =~ a ]]; then #analyse -ca echo -e "# ▷ Analyse" >> "$fileOutput" - for i in fi_efi fi_system_analyse fi_log_xorg fi_journal ; do + for i in fi_system_analyse fi_log_xorg fi_journal ; do echo -n "•" $i done @@ -3936,7 +3965,7 @@ for j in $options; do ORIGIN='test' prg_1 "$*" echo -n "•" - fi_gpu + fi_packagers echo; f_dspl_md "$fileOutput" exit ;; # test -c* | all ) diff --git a/scripts/getInfo_changelog.md b/scripts/getInfo_changelog.md index 878d49c..8f366ee 100644 --- a/scripts/getInfo_changelog.md +++ b/scripts/getInfo_changelog.md @@ -1,6 +1,12 @@ # changelog getInfo +## getInfo 2.58.0 7/12/2017 + +* révision: f_grep_file, sources affichées en colonnes +* révision: fi_pkg_apt, + paquets kernels +* révision: fi_efi en catégorie configuration + ## getInfo 2.57.1 6/12/2017 * révision: fi_locale, oublié locale