Надо было мне регулярно вызывать одну виндовую программку, которую поставил под PlayOnLinux.

Первым делом попытался это сделать через Cron. Но фиг там, не стартует.

И добрый человек graddata (респект ему!) на форуме посоветовал альтернативу: скрипт, который периодически будет вызывать программку через заданный промежуток времени:

#!/bin/sh
# Интервал (в секундах) между проверками
CHECKTIME=600

while :
do
/usr/share/playonlinux/playonlinux --run "MetaTester64" %F

sleep ${CHECKTIME}

done

где вместо /usr/share... можно ставить другие команды.

У этого скрипта есть небольшой недостаток - он безусловно (ничего не уточняя) запускает указанную программу.

Чуточку его доделаем с тем, чтоб скрипт сначала проверял запущена ли программа, и запускал её только в случае отсутствия программы среди запущенных

#!/bin/bash
# Интервал (в секундах) между проверками
CHECKTIME=15

while :
do
# Подсчитаем количество запущенных процессов с именем "tester64"
ret=$(pgrep -c tester64)
# если их количество равно нулю
if [ "$ret" -eq 0 ]
# то запустим программку
then
echo "не запущен"
/usr/share/playonlinux/playonlinux --run "tester64" %F
else
echo "запущен"
fi
# Пауза до следующей проверки
sleep ${CHECKTIME}
done

Впрочем, тестер иногда подвисает. И три процесса из четырёх (один - оболочка и три потока тестирования) отваливаются.

Снова подкорректируем скрипт:

#!/bin/bash
# Интервал (в секундах) между проверками
CHECKTIME=10

while :
do

# получим количество запущенных процессов по имени
ret=$(pgrep -c tester64)

# если процесс один, то убъём его
if [ "$ret" -eq 1 ]
then
kill metatester64.ex
fi

# если процессов нет, то запустим тестер
if [ "$ret" -eq 0 ]
then
/usr/share/playonlinux/playonlinux --run "tester64" %F
fi

# пауза до следующей проверки
sleep ${CHECKTIME}
done

Всё, радуемся, пьём коньяк.

PS Чтоб тестер не мозолил глаза задвинем его на второй рабочий стол.