mirror of https://framagit.org/kyodev/kyopages.git
getInfo 2.18.0
This commit is contained in:
parent
dd1f035f95
commit
7f0f9d8cc0
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
version=2.17.4
|
||||
date="25/10/2017"
|
||||
version=2.18.0
|
||||
date="26/10/2017"
|
||||
projet="simpledeb"
|
||||
contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues/"
|
||||
script="getInfo"
|
||||
|
@ -305,7 +305,7 @@ f__wget_test(){ # 17/10/2017
|
|||
exit 0
|
||||
}
|
||||
|
||||
# f_display: $1 variable à afficher, $2=var|cmd|sans (type titrage) [$3 titrage] [$4 commentaire titrage dans cmd]
|
||||
# f_display: $1 variable à afficher, $2=var|cmd|sans (type titrage) [$3 titrage] [$4 commentaire titrage en gras si cmd]
|
||||
# f_display "variable" "type" "titrage" "titrage_commentaire"
|
||||
f_display(){ # 25/10/2017
|
||||
[ "$text" ] && echo -en "$text" >> "$fileOutput" # flush avant fonction de text parent
|
||||
|
@ -314,7 +314,7 @@ f_display(){ # 25/10/2017
|
|||
[[ "$2" == "sans" || "$2" == "var" || "$2" == "cmd" ]] || display="erreur script \$2 ($1 $2 $3)"
|
||||
[ "$2" == "var" ] && display="**$3** \n"
|
||||
[ "$2" == "cmd" ] && display="\`$3\` \n"
|
||||
[[ "$2" == "cmd" && "$4" ]] && display="\`$3\` **$4** \n"
|
||||
[[ "$2" == "cmd" && "$4" ]] && display="\`$3\` **$4** \n"
|
||||
display+='``` \n'
|
||||
display+="${!1} \n"
|
||||
display+='``` \n'
|
||||
|
@ -528,14 +528,14 @@ fi_dmesg(){ # 25/10/2017
|
|||
unset text
|
||||
}
|
||||
|
||||
fi_graph(){ # 25/10/2017
|
||||
fi_graph(){ # 26/10/2017
|
||||
local slotGraphCards graphCards alert_Multicarte openGl resolutions logXorg modules ig text
|
||||
# graphCardsManuel="$(lspci -nnk | grep -EiA 3 'vga|display|3d')"
|
||||
# graphCardsManuel="$(lspci -nnv | grep -iEA 13 'vga|display|3d)"
|
||||
# graphCardsManuel="lspci -nnv -s $( lspci | grep -Ei 'vga|display|3d' | cut -d" " -f1 )"
|
||||
# debug: slotGraphCards="$(cat tests/lspci | grep -Ei 'vga|display|3d' | cut -d" " -f1)"
|
||||
# lspci
|
||||
slotGraphCards="$(lspci | grep -Ei 'vga|display|3d' | cut -d" " -f1)"
|
||||
# debug: slotGraphCards="$(cat tests/lspci | grep -Ei 'vga|display|3d' | cut -d" " -f1)"
|
||||
graphCards=${graphCards::-1} # suppression dernier $'\n'
|
||||
if [ $(f__cmd_exist optirun) ]; then
|
||||
for ig in $slotGraphCards; do
|
||||
|
@ -559,18 +559,18 @@ fi_graph(){ # 25/10/2017
|
|||
# openGl
|
||||
[ $(f__cmd_exist glxinfo) ] && openGl=$( glxinfo | grep 'OpenGL version' | sed 's/ string//' )
|
||||
# résolutions
|
||||
[ $(f__cmd_exist xrandr) ] && resolutions=$( xrandr --query | grep '^ *[0-9]' | head -n 10 )
|
||||
[ $(f__cmd_exist xrandr) ] && resolutions=$( xrandr --query | grep -A11 'Screen [0-9]' )
|
||||
# modules
|
||||
modules=$(lsmod | grep -Ei 'amdgpu|ati|i915|nouveau|nvidia|radeon|video|gma')
|
||||
# fonctions externes
|
||||
[ "$fget_gpu" ] || figet_gpu
|
||||
[ "$fget_resolution" ] || figet_resolution
|
||||
[ "$fget_resolution" ] || figet_screen
|
||||
###
|
||||
text="## graphisme \n\n"
|
||||
# cartes graphiques
|
||||
text+="$(sed -E 's/(.*)/> \* \*\*\1\*\*/' <<< $fget_gpu) \n"
|
||||
text+="$(sed -E 's/(.*)/> \* \*\*\1\*\*/' <<< $fget_gpu) \n\n"
|
||||
# nb écran & résolution(s) active(s)
|
||||
text+="\n\nnombre d'écrans: **$fget_nb_screen** \n"
|
||||
text+="nombre d'écrans: **$fget_nb_screen** \n"
|
||||
text+="résolution: **$fget_resolution** \n\n"
|
||||
# lspci
|
||||
f_display "graphCards" "cmd" "lspci -nnv | grep -iEA 13 'vga|display|3d"
|
||||
|
@ -580,7 +580,7 @@ fi_graph(){ # 25/10/2017
|
|||
[ "$openGl" ] && f_display "openGl" "cmd" "glxinfo | grep 'OpenGL version"
|
||||
# résolutions possibles, pas d'affichage si mode (ssh) ou xrandr pas accessible
|
||||
if [ "$resolutions" ]; then
|
||||
f_display "resolutions" "cmd" "xrandr --query | grep '^ *[0-9]' | head -n 10" "(10 premières résolutions possibles)"
|
||||
f_display "resolutions" "cmd" "xrandr --query | grep -A11 'Screen [0-9]'" "(10 premières résolutions possibles)"
|
||||
fi
|
||||
# modules vidéo
|
||||
text+="### modules video \n\n"
|
||||
|
@ -774,12 +774,12 @@ fi_nm(){ # 25/10/2017
|
|||
fi_nm_wifis(){ # 25/10/2017
|
||||
[ "$(f__cmd_exist nmcli)" ] || return 0
|
||||
local nm_wifis nm_connected text
|
||||
nm_wifis="$(nmcli -f SSID,BSSID,MODE,CHAN,FREQ,RATE,SIGNAL,BARS,SECURITY device wifi list)"
|
||||
nm_wifis="$(nmcli -f SSID,BSSID,MODE,CHAN,FREQ,RATE,SIGNAL,BARS,SECURITY device wifi list | head -n20)"
|
||||
nm_connected="$(LC_ALL=C nmcli -f SSID,ACTIVE,IN-USE device wifi list | gawk '/yes[[:space:]]+\*/ {print $1}')"
|
||||
###
|
||||
[ "$nm_wifis" ] || return 0
|
||||
text="## wifis à proximité \n\n"
|
||||
f_display "nm_wifis" "cmd" "nmcli -f SSID,BSSID,MODE,CHAN,FREQ,RATE,SIGNAL,BARS,SECURITY device wifi list"
|
||||
f_display "nm_wifis" "cmd" "nmcli -f SSID,BSSID,MODE,CHAN,FREQ,RATE,SIGNAL,BARS,SECURITY device wifi list | head -n20"
|
||||
printf "$text\n" >> "$fileOutput"
|
||||
unset text
|
||||
}
|
||||
|
@ -802,33 +802,39 @@ fi_nonFree(){ # 25/09/2017
|
|||
unset text
|
||||
}
|
||||
|
||||
fi_reseau(){ # 25/10/2017
|
||||
fi_reseau(){ # 26/10/2017
|
||||
local slotNetCard netCard ip_a iwconfig interfaces route resolv liste_canaux_wifi ifx text pluriel
|
||||
# netCardManuel="$(lspci -nnk | grep -EiA 5 'network|ethernet')"
|
||||
# netCardManuel="$(lspci -nnv | grep -EiA 15 'network|ethernet')"
|
||||
# netCardManuel="lspci -nnv -s $( lspci | grep -Ei 'network|ethernet' | cut -d" " -f1 )"
|
||||
#lspci
|
||||
slotNetCard="$(lspci | grep -Ei 'network|ethernet' | sed -En 's/^([0-9.:]+).*$/\1/gp')"
|
||||
for ifx in $slotNetCard; do
|
||||
netCard+="$(lspci -s $ifx -nnv)"$'\n'
|
||||
done
|
||||
netCard=${netCard::-1} # suppression dernier $'\n'
|
||||
# ip a & route
|
||||
ip_a="$(ip a | sed '/link\/ether/d; /valid_lft/d')" # filtre sur adr MAC & bail
|
||||
# ip_a="$(sed '/inet6.*scope global/d; /inet6.*scope link/d' <<< $ip_a)" # filtre sur inet6 scope global & scope link (fe80::)
|
||||
ip_a="$(sed '/inet6.*/d' <<< $ip_a)" # filtre sur inet6)
|
||||
route="$(ip route show)"
|
||||
# interfaces & resolv
|
||||
interfaces="$(grep -Ersv '#|^$' /etc/network/interfaces*)"
|
||||
interfaces="$(sed -E 's/wpa-psk [[:graph:]]+/wpa-psk <WPA key removed>/; s/:/: /' <<< $interfaces )"
|
||||
resolv="$(grep -Ev '#|^$' /etc/resolv.conf)"
|
||||
# iwconfig
|
||||
if [ "$(f__cmd_exist iwconfig)" ]; then #paquet wireless-tools requis
|
||||
iwconfig="$(iwconfig 2>&1 | grep -v 'no wireless extensions' | grep -v '^$')"
|
||||
fi
|
||||
# iwlist
|
||||
if [ "$(f__cmd_exist iwlist)" ]; then # liste canaux wifi; paquet wireless-tools requis
|
||||
liste_canaux_wifi="$(iwlist chan 2>&1 | grep -Ev 'no frequency information|^$')"
|
||||
fi
|
||||
# network manager
|
||||
netmgrpaths=("/usr/sbin/NetworkManager" "/usr/sbin/wicd" "/usr/sbin/connmand")
|
||||
netmgrnames=("NetworkManager" "Wicd" "ConnMan")
|
||||
for ifx in "${!netmgrpaths[@]}"; do
|
||||
if [ -f "${netmgrpaths[$ifx]}" ]; then netmgrinst+="${netmgrnames[$ifx]}"; fi
|
||||
[ -f "${netmgrpaths[$ifx]}" ] && netmgrinst+="${netmgrnames[$ifx]}"
|
||||
if [ "$(ps -ef | grep -c ${netmgrpaths[$ifx]})" -ge 2 ]; then
|
||||
netmgrrun+="$(ps -ef | grep -o "${netmgrpaths[$ifx]}.*$" | head -n 1)"
|
||||
fi
|
||||
|
@ -837,7 +843,9 @@ fi_reseau(){ # 25/10/2017
|
|||
figet_mod_net
|
||||
###
|
||||
text="## réseau \n\n"
|
||||
#lspci
|
||||
f_display "netCard" "cmd" "lspci -nnv | grep -EiA 15 'network|ethernet"
|
||||
# ip locales avec type
|
||||
f_display "ip_local_type" "var" "IP locale(s):"
|
||||
text+="* les adresses Mac peut être affichées avec "'`./getInfo --mac` ou `getInfo --mac`'" (script installé) \n"
|
||||
text+="* l'IP publique peut être connue avec: "'`./getInfo --ip` ou `getInfo --ip` (script installé) \n\n'
|
||||
|
@ -847,22 +855,23 @@ fi_reseau(){ # 25/10/2017
|
|||
text+="au pire, changer le renommage: "
|
||||
text+="https://kyodev.frama.io/kyopages/trucs/interfaces-nommage-classique/ \n\n"
|
||||
fi
|
||||
#gateway
|
||||
f_display "gateways" "var" "Passerelle(s):"
|
||||
if [ "$(wc -w <<< $ifnames)" -gt 1 ]; then # si plus d'une interface réseau
|
||||
f_display "if_prioritaire" "var" "interface prioritaire"
|
||||
fi
|
||||
# interface prioritaire
|
||||
[ "$(wc -w <<< $ifnames)" -gt 1 ] && f_display "if_prioritaire" "var" "interface prioritaire"
|
||||
# ip a & route & interface & resolv
|
||||
f_display "ip_a" "cmd" "ip address" "(sans ipV6 et sans adresses MAC)"
|
||||
f_display "route" "cmd" "ip route show"
|
||||
f_display "interfaces" "cmd" "grep -Ersv '#|^$' /etc/network/interfaces*"
|
||||
f_display "resolv" "cmd" "cat /etc/resolv.conf" "(serveurs de noms DNS utilisés)"
|
||||
if [ "$iwconfig" ]; then
|
||||
f_display "iwconfig" "cmd" "iwconfig"
|
||||
fi
|
||||
# iwconfig & iwlist
|
||||
[ "$iwconfig" ] && f_display "iwconfig" "cmd" "iwconfig"
|
||||
if [ "$liste_canaux_wifi" ]; then
|
||||
f_display "liste_canaux_wifi" "cmd" "iwlist chan"
|
||||
text+="* la configuration ssid utilisé peut être connue (si NetworkManager utilisé) avec "
|
||||
text+="\`./getInfo --ssid\` ou \n \`getInfo --ssid\` (script installé) \n\n"
|
||||
fi
|
||||
# networl manager
|
||||
if [ "$netmgrinst" ]; then
|
||||
text+="### gestionnaire de réseau \n\n"
|
||||
if [ "$netmgrinst" ]; then
|
||||
|
@ -875,12 +884,10 @@ fi_reseau(){ # 25/10/2017
|
|||
text+="en fonctionnement: "
|
||||
[ "$netmgrrun" ] && text+="**$netmgrrun** \n\n" || text+="aucun \n\n"
|
||||
fi
|
||||
# modules réseau
|
||||
text+="### modules réseau \n\n"
|
||||
if [ "$fget_mod_net" ]; then
|
||||
f_display "fget_mod_net" "var" "liste non garantie complète"
|
||||
else
|
||||
text+="**Modules chargés non reconnus**"
|
||||
fi
|
||||
[ "$fget_mod_net" ] && f_display "fget_mod_net" "var" "liste non garantie complète"
|
||||
[ "$fget_mod_net" ] || text+="**Modules chargés non reconnus**"
|
||||
printf "$text\n" >> "$fileOutput"
|
||||
unset text
|
||||
}
|
||||
|
@ -1031,7 +1038,7 @@ fi_systeme(){ # 25/10/2017
|
|||
figet_disk
|
||||
figet_distro
|
||||
figet_gpu
|
||||
figet_resolution
|
||||
figet_screen
|
||||
figet_shell
|
||||
figet_wm
|
||||
###
|
||||
|
@ -1657,33 +1664,24 @@ figet_mod_net(){ # thanks wireless-info, assigne $fget_mod_net # 01/10/2017
|
|||
fget_mod_net="$(lsmod | grep -E "(^|[[:punct:] ])($MODMATCHES|$LSMODMATCHES)[^[:punct:] ]*([[:punct:] ]|$)")"
|
||||
}
|
||||
|
||||
# assigne $fget_resolution, $fget_nb_screen
|
||||
figet_resolution(){ # 25/10/2017 thanks neofetch
|
||||
if [ "$ENV_SSH" ]; then
|
||||
fget_resolution="n/a (ssh)"
|
||||
return 0
|
||||
fi
|
||||
# assigne $fget_nb_screen, $fget_resolution
|
||||
figet_screen(){ # 26/10/2017
|
||||
local resolution
|
||||
if type -p xrandr >/dev/null; then
|
||||
resolution="$(xrandr --nograb --current | gawk 'match($0,/[0-9]*\.[0-9]*\*/) {printf $1 " @ " substr($0,RSTART,RLENGTH) "Hz, "}')"
|
||||
resolution="${resolution//\*}"
|
||||
resolution="${resolution//\.[0-9][0-9]}"
|
||||
elif type -p xdpyinfo >/dev/null; then
|
||||
resolution="$(xdpyinfo | gawk '/dimensions:/ {printf $2}')"
|
||||
fget_nb_screen="n/a"
|
||||
fget_resolution="n/a"
|
||||
if [ "$ENV_SSH" ]; then
|
||||
fget_resolution+=" (ssh)"
|
||||
return 0
|
||||
fi
|
||||
if [ $(f__cmd_exist xrandr) ]; then
|
||||
fget_nb_screen=$(( $( grep -c 'Screen [0-9]+:' <<< "$xrandr" ) + 1 ))
|
||||
resolution=$( gawk '/[0-9]\*/ {gsub(/\*\+/,"",$2); printf "%s pixels (%dHz), ", $1, $2}' <<< $( xrandr --query ) )
|
||||
elif [ $(f__cmd_exist xdpyinfo) ]; then
|
||||
fget_nb_screen=$( gawk -F ':' '/number of screens/ { gsub(/ /,"",$2); print $2 }' <<< $(xdpyinfo) )
|
||||
resolution=$( gawk '/dimensions/ { print $2, $3 ", " }' <<< $(xdpyinfo) )
|
||||
fi
|
||||
resolution="${resolution%,*}"
|
||||
fget_resolution="$resolution"
|
||||
### nombre d'écrans
|
||||
local xrandr
|
||||
if [ $( f__cmd_exist xrandr ) ]; then
|
||||
xrandr=$( xrandr --query )
|
||||
# fget_nb_screen=$( gawk -F ':' ' /Screen [0-9]+:/ { print $1}
|
||||
# ' <<< "$xrandr" )
|
||||
fget_nb_screen=$(( $( grep -c 'Screen [0-9]+:' <<< "$xrandr" ) + 1 ))
|
||||
else
|
||||
fget_nb_screen="-99"
|
||||
fi
|
||||
# echo "$fget_nb_screen"
|
||||
}
|
||||
|
||||
figet_shell(){ # thanks neofetch, assigne $fget_shell # 04/10/2017
|
||||
|
|
|
@ -4,19 +4,24 @@
|
|||
## todo
|
||||
|
||||
* placer ln dans /usr/local/bin au lieu de /usr/bin ?
|
||||
* réseau réviser, interface name: virbr0
|
||||
* réseau réviser, interface name: virbr0, docker0
|
||||
* "alertifier" fi-reseau
|
||||
* refaire/revoir figet_resolution
|
||||
* revoir modules réseau
|
||||
* réviser alert_
|
||||
* revoir affichage cmd si présente sinon, juste signalement plus discret
|
||||
* nombre d'écrans
|
||||
|
||||
---
|
||||
|
||||
* f__requis f__wget_test fscript_get_version fscript_update fscript_cronAnacron
|
||||
* f__cmd_exist f__sudo f__requis
|
||||
|
||||
## 2.18.0 26/10/2017
|
||||
|
||||
* nouveau: figet_screen (nb écrans & résolutions)
|
||||
* suppression: figet_resolution neofetch
|
||||
* nouveau: xrandr multi-écrans
|
||||
|
||||
## 2.17.4 25/10/2017
|
||||
|
||||
* nouveau: nombre d'écrans
|
||||
|
|
Loading…
Reference in New Issue