#!/bin/ksh -p XLOCK=xlock findxlock() { ps -fu $USER | awk '/'$XLOCK'/{print $8}' | grep -c "$XLOCK" } findps_sleep() { ps -fu $USER | awk '/sleep '$1'/{printf $2" "}' } time=10 if [[ "$1" != "" ]] ; then time=$1 fi secs=$((time * 60)) ( ( sleep 1; if (( $( findxlock ) == 1 )) ; then echo kill -9 -1 ; fi ) & $XLOCK -r -info \ "Locked at: $(date '+%R') - Machine will reboot in $time minutes." kill -9 $( findps_sleep $secs ) ) 2> /dev/null