Запуск сценария учета (sh) всего сеанса пользователя

У меня есть сценарий, который делает некоторые бухгалтерии. Эта бухгалтерия выполняется через определенный промежуток времени, скажем, 30 минут.

Я хочу, чтобы сценарий был активным с момента входа пользователя в систему до его выхода из системы.

На данный момент сценарий выглядит следующим образом:

#!/bin/sh
while true
do
    #do some stuff
    sleep 1800
done

Я не знаю, как настроить систему для автоматического запуска выполнения этого сценария (особенно в многопоточном режиме, поскольку сценарий никогда не будет остановки).

Другая проблема заключается в том, как этот сценарий должен завершить его выполнение. По сути, все должно быть сделано автоматически: лучше не делать этого, чем пользователю, который выходит из системы во время выполнения. Кроме того, сценарий не должен останавливать процесс выхода из системы до тех пор, пока весь сценарий не будет выполнен (что никогда не произойдет).

Как я могу достичь этих двух целей?

Я знаю, что сценарий не так точен со временем (поскольку сам материал занимает несколько секунд, через некоторое время цикл не будет выполняться каждые 30 минут), но это не так важно.

3
задан 6 February 2013 в 07:39

1 ответ

Отметьте в этом посте , чтобы узнать, как запустить скрипт при запуске (после входа в GUI).

Что касается второй части запроса, я не думаю, что вы найдете простой способ предотвратить процесс выхода из системы. Что-то простое, что вы можете сделать, это отправить некоторые уведомления на экран, когда закончится время сна:

#!/bin/sh
while true
do
    notify-send -i "$([ $? = 0 ] && echo terminal)" "Updating bookkeeping!"
    #do some stuff
    notify-send -i "$([ $? = 0 ] && echo terminal)" "Update of bookkeeping will start again in 30 minutes."
    sleep 1800
done
0
ответ дан 6 February 2013 в 07:39

Другие вопросы по тегам:

Похожие вопросы: