#!/bin/sh barwidth=20 # remove all current statusbars processes="$(ps aux | grep 'st -c' | grep 'status' | awk -F' ' '{print $2}')" for i in $processes; do pkill -P "$i" 2>&1 > /dev/null kill $i done # get all screens screens="$(xrandr | grep ' connected' | sed 's/ primary//g' | awk -F' ' '{print $1 " " $3}')" # for every screen, create a statusbar IFS=" " for i in $screens; do screenstring=$(echo $i | awk -v a="$barwidth" -F'[ x+]' '{print $2 "x" a "+" $4 "+" $5}') st -c statusbar -p -g "$screenstring" -e status & done