Files
MOTD/40-services
2024-11-15 00:56:28 +03:00

44 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
export LANG='en_US.UTF-8'
# set column width
COLUMNS=2
# colors
green="\e[1;32m"
red="\e[1;31m"
undim="\e[0m"
declare -A services
services["docker"]="Docker"
#services["openvpn-server@server"]="OVPN server"
#services["openvpn-server@private"]="OVPN private"
services["smbd"]="Samba"
services["smartd"]="Smart"
# services["minecraft@iis"]="MC IIS"
# services["minecraft@iis_creative"]="IIS CREATIVE"
#services["lavalink"]="Lavalink"
#services["discord-music"]="Dis music"
#services["discord-pisya"]="Dis pisya"
#services["discord-boom"]="Dis boom"
services["wsdd"]="WSD"
# sort services
k=0
out=""
for i in "${!services[@]}"; do
((k++))
# color green if service is active, else red
service_status=($(systemctl is-active "$i"))
if [[ "${service_status}" == "active" ]]; then
out+="${services[$i]}:,${green} up${undim},"
else
out+="${services[$i]}:,${red}down${undim},"
fi
# insert \n every $COLUMNS column
if [ $((($k) % $COLUMNS)) -eq 0 ]; then
out+="\n"
fi
done
out+="\n"
printf "\nservices:\n"
printf "$out" | column -ts $',' | sed -e 's/^/ /'