#!/bin/bash toggle(){ if pgrep -u $USER -f "conky -c" ;then pkill -9 -u $USER conky else SESSIONFILE=$HOME/.config/conky/conky-sessionfile while read -r line; do if [[ $line == *conky* ]]; then THIS_CONKY=$(echo "${line##+([[:space:]])}" | awk '{print $3}') CONKYRC=${THIS_CONKY//\'/} if ! pgrep -u $USER -f "${CONKYRC//\~/}" then conky -c "${CONKYRC//\~/$HOME}" & else pkill -u $USER -f "${CONKYRC//\~/}" fi fi done < $SESSIONFILE fi exit 0 } start_conky(){ SESSIONFILE=$HOME/.config/conky/conky-sessionfile while read -r line; do if [[ $line == *conky* ]]; then THIS_CONKY=$(echo "${line##+([[:space:]])}" | awk '{print $3}') CONKYRC=${THIS_CONKY//\'/} if ! pgrep -u $USER -f "${CONKYRC//\~/}" then conky -c "${CONKYRC//\~/$HOME}" & else pkill -u $USER -f "${CONKYRC//\~/}" fi fi done < $SESSIONFILE } stop_conky(){ if pgrep -u $USER -f "conky -c" ;then pkill -9 -u $USER conky fi } case "$1" in start) start_conky;; stop) stop_conky;; *) toggle;; esac