| 12345678910111213141516171819202122232425262728293031323334353637 |
- #!/bin/sh
- # Ensure we have a valid TMP path
- if [ -z "${TMPDIR}" ]; then
- TMPDIR="/tmp"
- fi
- if [ ! -d "${TMPDIR}" ]; then
- echo "Invalid TMPDIR: ${TMPDIR}" 1>&2
- exit 1
- fi
- # Grab the existing PID, if any
- PID=0
- PIDFILE="${TMPDIR}/dmx.pid"
- if [ -s "${PIDFILE}" ]; then
- read p < "${PIDFILE}"
- if [ -n "${p}" ] && [ $p -gt 1 ]; then
- PID=$p
- fi
- fi
- # Validate the PID, if it exists
- if [ $PID -gt 1 ]; then
- if ! ps -o command= -p "${PID}" | \
- grep -q -E '^\S+/Python.app/Contents/MacOS/Python /Users/tv/bin/video/dmx/dmx.py'; then
- PID=0
- fi
- fi
- # Exit if we're running
- if [ $PID -gt 1 ]; then
- exit 0
- fi
- # Launch if we are not running
- echo $$ > "${PIDFILE}"
- exec "${HOME}/bin/video/dmx/dmx.py"
|