#! /bin/sh set -e DIR="$HOME/bsmtp" FILE="riva.debian.net" TRANSIT="$FILE.transit" cd "$DIR" || exit 0 # Is there anything to send? [ -s "$FILE" ] || exit 0 lockfile-create "$FILE" lockfile-touch "$FILE" & TOUCH="$!" trap 'kill "$TOUCH"; lockfile-remove "$FILE"' EXIT ERR HUP INT QUIT TERM if [ -f "$TRANSIT" ]; then cat "$FILE" >> "$TRANSIT" && rm -f "$FILE" else mv -f "$FILE" "$TRANSIT" fi cat "$TRANSIT" rm -f "$TRANSIT" exit 0