From 8fd117c5413985f0c77440a3aff2ce830d78dae2 Mon Sep 17 00:00:00 2001 From: srdusr Date: Sat, 3 Dec 2022 22:29:59 +0200 Subject: Add left-status script to show ip address, memory usage and if connected to a vpn --- .config/tmux/left-status.sh | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100755 .config/tmux/left-status.sh (limited to '.config/tmux/left-status.sh') diff --git a/.config/tmux/left-status.sh b/.config/tmux/left-status.sh new file mode 100755 index 0000000..06ae1a6 --- /dev/null +++ b/.config/tmux/left-status.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +function ip-address() { + # Loop through the interfaces and check for the interface that is up. + for file in /sys/class/net/*; do + iface=$(basename $file); + read status < $file/operstate; + [ "$status" == "up" ] && ip addr show $iface | awk '/inet /{printf $2" "}' + done +} + +function memory-usage() { + if [ "$(which bc)" ]; then + # Display used, total, and percentage of memory using the free command. + read used total <<< $(free -m | awk '/Mem/{printf $2" "$3}') + # Calculate the percentage of memory used with bc. + percent=$(bc -l <<< "100 * $total / $used") + # Feed the variables into awk and print the values with formating. + awk -v u=$used -v t=$total -v p=$percent 'BEGIN {printf "%sMi/%sMi %.1f% ", t, u, p}' + fi +} + +function vpn-connection() { + # Check for tun0 interface. + [ -d /sys/class/net/tun0 ] && printf "%s " 'VPN*' +} + +function main() { + # Comment out any function you do not need. + ip-address + memory-usage + vpn-connection +} + +# Calling the main function which will call the other functions. +main -- cgit v1.2.3