, . , :
(mycommand args) & pid=$!
sleep 1000 && kill -INT $pid
. . .
DVB-S:
(w_scan -a 7 -E 0 -f s -c $1 -s $2 -o 7 -x >$tunefile) & pid=$!
sleep 1500 && kill -INT $pid
w_scan .
EDIT: , pid: , , script .
if ps -p $id > /dev/null
then
: active
else
: inactive
fi
EDIT2: script, ffmpeg . mkv ( 2Gb) mp4. , , 10 , .
, .
film=/home/wlgfx/longfilm.mkv
output=/home/wlgfx/longfilm.mp4
(ffmpeg -i $film -y -vcodec copy -acodec copy $output) & pid=$!
if wait $pid; then echo "$pid success $?"
else echo "$pid fail $?"
fi
$?
, ffmpeg 5 , 2Gb . , , script, , .
: fooobar.com/questions/67288/...
EDIT4: -, , , . .
film=/home/wlgfx/longfilm.mkv
output=/home/wlgfx/longfilm.mp4
while : ; do
(ffmpeg -i $film -y -vcodec copy -acodec copy $output) & pid=$!
(sleep 25 ; echo 'timeout'; kill $pid) & killpid=$!
wait $pid
status=$?
(kill -0 $killpid && kill $killpid) || true
[[ $status == 0 ]] || break
done