mirror of
https://github.com/smxi/inxi.git
synced 2024-11-16 16:21:39 +00:00
trying to tighten the fan output to avoid errors and also added sys fan 1-3 handling.
This commit is contained in:
parent
33332b4d5e
commit
43862494d7
49
inxi
49
inxi
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
########################################################################
|
||||
#### Script Name: inxi
|
||||
#### version: 1.0.87-b1
|
||||
#### version: 1.0.88-b1
|
||||
#### Date: 26 July 2009
|
||||
########################################################################
|
||||
#### SPECIAL THANKS
|
||||
|
@ -3013,12 +3013,16 @@ get_sensors_data()
|
|||
|
||||
IFS=","
|
||||
if [[ $B_SENSORS == 'true' ]];then
|
||||
# note: non-configured sensors gives error message, which we need to redirect to stdout
|
||||
A_SENSORS_DATA=( $( sensors | gawk '
|
||||
BEGIN {
|
||||
IGNORECASE=1
|
||||
moboTemp=""
|
||||
cpuTemp=""
|
||||
cpuFan=""
|
||||
sysFan1=""
|
||||
sysFan2=""
|
||||
sysFan3=""
|
||||
tempData1=""
|
||||
tempData2=""
|
||||
}
|
||||
|
@ -3056,23 +3060,26 @@ get_sensors_data()
|
|||
cpuTemp=cpuTemp "°" tempData2
|
||||
}
|
||||
}
|
||||
/CPU Fan|fan1:/ {
|
||||
if ( $1 == "fan1:" ) {
|
||||
tempData1=$2
|
||||
}
|
||||
else {
|
||||
tempData1=$3
|
||||
}
|
||||
cpuFan=tempData1
|
||||
/CPU Fan:/ {
|
||||
cpuFan=$3
|
||||
}
|
||||
/fan1:/ {
|
||||
sysFan1=$2
|
||||
}
|
||||
/fan2:/ {
|
||||
sysFan2=$2
|
||||
}
|
||||
/fan3:/ {
|
||||
sysFan3=$2
|
||||
}
|
||||
|
||||
END {
|
||||
# if they are ALL null, print error message
|
||||
if ( moboTemp == "" && cpuTemp == "" && cpuFan == "" ) {
|
||||
if ( moboTemp == "" && cpuTemp == "" && cpuFan == "" && sysFan1 == "" && sysFan2 == "" && sysFan3 == "" ) {
|
||||
print "No active sensors found. Have you configured your sensors yet?"
|
||||
}
|
||||
else {
|
||||
print moboTemp "," cpuTemp "," cpuFan
|
||||
print moboTemp "," cpuTemp "," cpuFan "," sysFan1 "," sysFan2 "," sysFan3
|
||||
}
|
||||
}
|
||||
'
|
||||
|
@ -3942,7 +3949,7 @@ print_partition_data()
|
|||
print_sensors_data()
|
||||
{
|
||||
eval $LOGFS
|
||||
local mobo_temp='' cpu_temp='' cpu_fan='' sensors_data=''
|
||||
local mobo_temp='' cpu_temp='' cpu_fan='' sys_fan1='' sys_fan2='' sys_fan3='' sensors_data=''
|
||||
get_sensors_data
|
||||
|
||||
# initial error cases, for missing app or unconfigured sensors
|
||||
|
@ -3963,14 +3970,28 @@ print_sensors_data()
|
|||
fi
|
||||
cpu_temp="${C1}Cpu Temp:${C2} $cpu_temp "
|
||||
|
||||
# we need to make sure it's either cpu fan OR cpu fan and sys fan 1
|
||||
if [[ -n ${A_SENSORS_DATA[2]} ]];then
|
||||
cpu_fan="${A_SENSORS_DATA[2]}rpm "
|
||||
cpu_fan="${A_SENSORS_DATA[2]}rpm"
|
||||
elif [[ -z ${A_SENSORS_DATA[2]} && -n ${A_SENSORS_DATA[3]} ]];then
|
||||
cpu_fan="${A_SENSORS_DATA[3]}rpm"
|
||||
else
|
||||
cpu_fan='N/A'
|
||||
fi
|
||||
cpu_fan="${C1}Cpu Fan:${C2} $cpu_fan "
|
||||
# then set the sys fans, if present or 0. sys fan 1 only if cpu fan is present,
|
||||
# otherwise fan1: is cpu fan
|
||||
if [[ -n ${A_SENSORS_DATA[2]} && -n ${A_SENSORS_DATA[3]} ]];then
|
||||
sys_fan1="${C1}Sys Fan1:${C2} ${A_SENSORS_DATA[3]}rpm "
|
||||
fi
|
||||
if [[ -n ${A_SENSORS_DATA[4]} ]];then
|
||||
sys_fan2="${C1}Sys Fan2:${C2} ${A_SENSORS_DATA[4]}rpm "
|
||||
fi
|
||||
if [[ -n ${A_SENSORS_DATA[5]} ]];then
|
||||
sys_fan3="${C1}Sys Fan3:${C2} ${A_SENSORS_DATA[5]}rpm "
|
||||
fi
|
||||
fi
|
||||
sensors_data="$mobo_temp$cpu_temp$cpu_fan"
|
||||
sensors_data="$mobo_temp$cpu_temp$cpu_fan$sys_fan1$sys_fan2$sys_fan3"
|
||||
sensors_data=$( create_print_line "Sensors:" "$sensors_data" )
|
||||
print_screen_output "$sensors_data"
|
||||
eval $LOGFE
|
||||
|
|
Loading…
Reference in a new issue