Improvements

This commit is contained in:
Cyril 2025-01-13 01:41:08 +01:00
parent be806706d6
commit cb14fc26c4
3 changed files with 39 additions and 19 deletions

View file

@ -4,19 +4,19 @@ set -e
function top_line() {
echo -e "${white}"
echo -e " ┌──────────────────────────────────────────────────────────────┐"
echo -e " ┌────────────────────────────────────────────────────────────────┐"
}
function hr() {
echo -e " │ │"
echo -e " │ │"
}
function inner_line() {
echo -e " ├──────────────────────────────────────────────────────────────┤"
echo -e " ├────────────────────────────────────────────────────────────────┤"
}
function bottom_line() {
echo -e " └──────────────────────────────────────────────────────────────┘"
echo -e " └────────────────────────────────────────────────────────────────┘"
echo -e "${white}"
}
@ -27,7 +27,7 @@ function blank_line() {
function title() {
local text=$1
local color=$2
local max_length=62
local max_length=64
local text_length=${#text}
local padding_left=$(((max_length - text_length) / 2))
local padding_right=$((max_length - text_length - padding_left))
@ -36,7 +36,7 @@ function title() {
function subtitle() {
local menu_text1=$1
local max_length=61
local max_length=63
local padding=$((max_length - ${#menu_text1}))
printf "${blue}${menu_text1}%-${padding}s${white}│\n" ''
}
@ -45,7 +45,7 @@ function main_menu_option() {
local menu_number=$1
local menu_text1=$2
local menu_text2=$3
local max_length=56
local max_length=58
local total_text_length=$(( ${#menu_text1} + ${#menu_text2} ))
local padding=$((max_length - total_text_length))
printf "${yellow}${menu_number}${white}) ${green}${menu_text1} ${white}${menu_text2}%-${padding}s${white}│\n" ''
@ -55,7 +55,7 @@ function menu_option() {
local menu_number=$1
local menu_text1=$2
local menu_text2=$3
local max_length=60
local max_length=62
local total_text_length=$(( ${#menu_text1} + ${#menu_text2} + ${#menu_number} + 4 ))
local padding=$((max_length - total_text_length))
printf "${yellow}${menu_number}${white}) ${white}${menu_text1} ${green}${menu_text2}%-${padding}s${white}│\n" ''
@ -65,7 +65,7 @@ function bottom_menu_option() {
local menu_number=$1
local menu_text=$2
local color=$3
local max_length=57
local max_length=59
local padding=$((max_length - ${#menu_text}))
printf "$color${menu_number}${white}) ${white}${menu_text}%-${padding}s${white}│\n" ''
}
@ -74,7 +74,7 @@ function info_line() {
local status=$1
local text=$2
local color=$3
local max_length=66
local max_length=68
local total_text_length=$(( ${#status} + ${#text} ))
local padding=$((max_length - total_text_length))
printf "$color${status} ${white}${text}%-${padding}s${white}│\n" ''
@ -83,7 +83,7 @@ function info_line() {
function system_line() {
local title="$1"
local value="$2"
local max_length=61
local max_length=63
local title_length=${#title}
local separator=": "
local value_length=${#value}

View file

@ -30,7 +30,7 @@ function get_script_version() {
function version_line() {
local content="$1"
local content_length="${#content}"
local width=$((73))
local width=$((75))
local padding_length=$((width - content_length - 3))
printf " │ %*s%s%s\n" $padding_length '' "$content" " │"
}

View file

@ -23,6 +23,29 @@ function check_connection() {
fi
}
function format_uptime() {
local uptime=$1
local upDays=$((uptime / 60 / 60 / 24))
local upHours=$((uptime / 60 / 60 % 24))
local upMins=$((uptime / 60 % 60))
local output=""
if [ $upDays -gt 0 ]; then
output="$output$upDays day"
[ $upDays -gt 1 ] && output="${output}s"
output="$output "
fi
if [ $upHours -gt 0 ]; then
output="$output$upHours hour"
[ $upHours -gt 1 ] && output="${output}s"
output="$output "
fi
if [ $upMins -gt 0 ] || [ -z "$output" ]; then
output="$output$upMins minute"
[ $upMins -gt 1 ] && output="${output}s"
fi
echo "$output"
}
function system_menu_ui() {
memfree=`cat /proc/meminfo | grep MemFree | awk {'print $2'}`
memtotal=`cat /proc/meminfo | grep MemTotal | awk {'print $2'}`
@ -30,10 +53,8 @@ function system_menu_ui() {
diskused=`df -h | grep /dev/mmcblk0p10 | awk {'print $3 " / " $2 " (" $4 " available)" '}`
process=`ps ax | wc -l | tr -d " "`
uptime=`cat /proc/uptime | cut -f1 -d.`
upDays=$((uptime/60/60/24))
upHours=$((uptime/60/60%24))
upMins=$((uptime/60%60))
load=`cat /proc/loadavg | awk {'print $1 " (1 min.) / " $2 " (5 min.) / " $3 " (15 min.)"'}`
formatted_uptime=$(format_uptime $uptime)
load=`awk -v cpus=2 '{printf "%.2f%% (1 min) | %.2f%% (5 min) | %.2f%% (15 min)\n", $1*100/cpus, $2*100/cpus, $3*100/cpus}' /proc/loadavg`
device_sn=$(cat /usr/data/creality/userdata/config/system_config.json | grep -o '"device_sn":"[^"]*' | awk -F '"' '{print $4}')
mac_address=$(cat /usr/data/creality/userdata/config/system_config.json | grep -o '"device_mac":"[^"]*' | awk -F '"' '{print $4}' | sed 's/../&:/g; s/:$//')
top_line
@ -46,11 +67,10 @@ function system_menu_ui() {
system_line " Device SN" "$device_sn"
system_line " IP Address" "$(check_connection)"
system_line "MAC Address" "$mac_address"
system_line " CPU Usage" "$load"
system_line " RAM Usage" "$(($memfree/1024)) MB / $(($memtotal/1024)) MB ($pourcent% available)"
system_line " Disk Usage" "$diskused"
system_line " Uptime" "$upDays days $upHours hours $upMins minutes"
system_line " Processes" "$process running process"
system_line "System Load" "$load"
system_line " Uptime" "$formatted_uptime"
hr
inner_line
hr