From d086bb4ca0c79f73ceef666e7634e2ade9f4105e Mon Sep 17 00:00:00 2001 From: David Luevano Alvarado <55825613+luevano@users.noreply.github.com> Date: Thu, 27 Feb 2020 13:13:57 -0700 Subject: Tweak blocklets --- .local/bin/blocks/cpu | 45 ++++++++++++++++++++++---------------------- .local/bin/blocks/memory | 49 ++++++++++++------------------------------------ 2 files changed, 34 insertions(+), 60 deletions(-) diff --git a/.local/bin/blocks/cpu b/.local/bin/blocks/cpu index 44c1189..e955d4b 100755 --- a/.local/bin/blocks/cpu +++ b/.local/bin/blocks/cpu @@ -11,7 +11,7 @@ use warnings; use utf8; use Getopt::Long; -# default values +# Default values. my $t_warn = $ENV{T_WARN} // 50; my $t_crit = $ENV{T_CRIT} // 80; my $cpu_usage = -1; @@ -19,44 +19,43 @@ my $decimals = $ENV{DECIMALS} // 2; my $label = $ENV{LABEL} // ""; sub help { - print "Usage: cpu_usage [-w ] [-c ] [-d ]\n"; - print "-w : warning threshold to become yellow\n"; - print "-c : critical threshold to become red\n"; - print "-d : Use decimals for percentage (default is $decimals) \n"; - exit 0; + print "Usage: cpu_usage [-w ] [-c ] [-d ]\n"; + print "-w : warning threshold to become yellow\n"; + print "-c : critical threshold to become red\n"; + print "-d : Use decimals for percentage (default is $decimals) \n"; + exit 0; } GetOptions("help|h" => \&help, - "w=i" => \$t_warn, - "c=i" => \$t_crit, - "d=i" => \$decimals, + "w=i" => \$t_warn, + "c=i" => \$t_crit, + "d=i" => \$decimals, ); -# Get CPU usage +# Get CPU usage. $ENV{LC_ALL}="en_US"; # if mpstat is not run under en_US locale, things may break, so make sure it is open (MPSTAT, 'mpstat 1 1 |') or die; while () { - if (/^.*\s+(\d+\.\d+)[\s\x00]?$/) { - $cpu_usage = 100 - $1; # 100% - %idle - last; - } + if (/^.*\s+(\d+\.\d+)[\s\x00]?$/) { + $cpu_usage = 100 - $1; # 100% - %idle + last; + } } close(MPSTAT); $cpu_usage eq -1 and die 'Can\'t find CPU information'; -# Print short_text, full_text -print "${label}"; -printf "%.${decimals}f%%\n", $cpu_usage; -print "${label}"; -printf "%.${decimals}f%%\n", $cpu_usage; +# Full text. +printf "%s %.${decimals}f%%\n", $label, $cpu_usage; +# Short text. +printf "%s %.${decimals}f%%\n", $label, $cpu_usage; -# Print color, if needed +# Print color, if needed. if ($cpu_usage >= $t_crit) { - print "#FF0000\n"; - exit 33; + print "#FF0000\n"; + exit 33; } elsif ($cpu_usage >= $t_warn) { - print "#FFFC00\n"; + print "#FFFC00\n"; } exit 0; diff --git a/.local/bin/blocks/memory b/.local/bin/blocks/memory index 90eb2c6..c581a53 100755 --- a/.local/bin/blocks/memory +++ b/.local/bin/blocks/memory @@ -1,20 +1,7 @@ -#!/bin/sh -# Copyright (C) 2014 Julien Bonjean +#!/bin/bash -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -TYPE="${BLOCK_INSTANCE:-mem}" +LABEL=${LABEL:"+"} +TYPE="${TYPE:-mem}" awk -v type=$TYPE ' /^MemTotal:/ { @@ -29,35 +16,23 @@ awk -v type=$TYPE ' /^Cached:/ { mem_free+=$2 } -/^SwapTotal:/ { - swap_total=$2 -} -/^SwapFree:/ { - swap_free=$2 -} END { - if (type == "swap") { - free=swap_free/1024/1024 - used=(swap_total-swap_free)/1024/1024 - total=swap_total/1024/1024 - } else { - free=mem_free/1024/1024 - used=(mem_total-mem_free)/1024/1024 - total=mem_total/1024/1024 - } + free=mem_free/1024/1024 + used=(mem_total-mem_free)/1024/1024 + total=mem_total/1024/1024 pct=0 if (total > 0) { pct=used/total*100 } - # full text - printf("%.1fG/%.1fG (%.f%%)\n", used, total, pct) - - # short text - printf("%.f%%\n", pct) + # Full text. + # printf("%s %.1fG/%.1fG (%.f%%)\n", LABEL, used, total, pct) + printf("%s %.1fG\n", LABEL, used) + # Short text. + printf("%s %.f%%\n", LABEL, pct) - # color + # Color. if (pct > 90) { print("#FF0000") } else if (pct > 80) { -- cgit v1.2.3-54-g00ecf