#!/bin/sh -e # POSIX shell variant for ubase respawn usage() { printf 'usage: %s [-d N] cmd [args...]\n' "${0##*/}" exit "${1:-0}" } die() { printf '%s\n' "$@" >&2; exit 1;} case "$1" in -d) [ "$3" ] || usage 1 [ "$2" -gt 0 ] || die "Not a number: $2" delay=$2; shift 2 ;; --help|-h|'') usage ;; -*) usage 1 esac while :; do "$@" [ "$delay" ] && sleep "$delay" done