# Created on savesnippets.com · https://savesnippets.com/YXDAVD6bGy0Vrb #!/usr/bin/env bash set -euo pipefail PIDFILE="/var/run/myapp.pid" # Already running? if [[ -f "$PIDFILE" ]] && kill -0 "$(cat "$PIDFILE")" 2>/dev/null; then echo "Already running as PID $(cat "$PIDFILE")" >&2 exit 1 fi # Write our PID, clean up on exit echo $$ > "$PIDFILE" trap 'rm -f "$PIDFILE"' EXIT INT TERM # ─── daemon body ───────────────────────────────────── while true; do echo "[$(date)] heartbeat" sleep 60 done