From 0d467efa7e469c572e07eaf871ed074b88117aa9 Mon Sep 17 00:00:00 2001 From: Poil Date: Mon, 20 Nov 2023 12:03:36 +0100 Subject: [PATCH] Optim --- scripts/00-basic | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/scripts/00-basic b/scripts/00-basic index 9a518b5..3a8cafc 100755 --- a/scripts/00-basic +++ b/scripts/00-basic @@ -3,15 +3,15 @@ # get load averages IFS=" " read LOAD1 LOAD5 LOAD15 <<<$(awk '{ print $1,$2,$3 }' /proc/loadavg) # get free memory -IFS=" " read USED AVAIL TOTAL <<<$(free -htm | grep "Mem" | awk {'print $3,$7,$2'}) +IFS=" " read USED AVAIL TOTAL <<<$(free -htm | awk '/Mem/ { print $3,$7,$2 }') # get processes PROCESS=$(ps -eo user=|sort|uniq -c | awk '{ print $2 " " $1 }') PROCESS_ALL=$(echo "$PROCESS"| awk {'print $2'} | awk '{ SUM += $1} END { print SUM }') -PROCESS_ROOT=$(echo "$PROCESS"| grep root | awk {'print $2'}) -PROCESS_USER=$(echo "$PROCESS"| grep -v root | awk {'print $2'} | awk '{ SUM += $1} END { print SUM }') +PROCESS_ROOT=$(echo "$PROCESS" | awk '/root/ { print $2}') +PROCESS_USER=$(echo "$PROCESS" | awk '!/root/ { SUM += $2} END { print SUM }') # get processors -PROCESSOR_NAME=$(grep "model name" /proc/cpuinfo | cut -d ' ' -f3- | awk {'print $0'} | head -1) -PROCESSOR_COUNT=$(grep -ioP 'processor\t:' /proc/cpuinfo | wc -l) +PROCESSOR_NAME=$(awk -F": " '/model name/ { print $2 }' /proc/cpuinfo | head -1) +PROCESSOR_COUNT=$(grep -ioPc 'processor\t:' /proc/cpuinfo) # colors W="\e[0;39m" @@ -35,10 +35,9 @@ max_usage=90 bar_width=50 # disk usage: ignore zfs, squashfs & tmpfs -mapfile -t dfs < <(df -H -x zfs -x squashfs -x tmpfs -x devtmpfs -x overlay --output=target,pcent,size | tail -n+2) printf "\nDisk usage:\n" -for line in "${dfs[@]}"; do +while read line; do # get disk usage usage=$(echo "$line" | awk '{print $2}' | sed 's/%//') used_width=$((($usage*$bar_width)/100)) @@ -62,6 +61,6 @@ for line in "${dfs[@]}"; do # print usage line & bar echo "${line}" | awk '{ printf("%-31s%+3s used out of %+4s\n", $1, $2, $3); }' | sed -e 's/^/ /' echo -e "${bar}" | sed -e 's/^/ /' -done +done < <(df -H -x zfs -x squashfs -x tmpfs -x devtmpfs -x overlay --output=target,pcent,size | tail -n+2) printf "\n"