скрипт для входа в простой xserver

Ниже приведен скрипт для расчета времени простоя машины. Предполагается, что скрипт проверяет время простоя xserver с интервалом в 1 минуту и ​​записывает результат в местоположение с помощью cronjob. Но это не работает, как я ожидал. Он не сообщает о времени простоя, даже если машина работает на холостом ходу больше назначенного лимита времени простоя.

В этом примере ограничение по времени составляет 1 минуту. Это просто фиктивное время для того, чтобы задать этот вопрос и проверить, не теряя времени.

Кто-нибудь может помочь?

#!/bin/bash
timeinmsec="$(xprintidle)"
timeinmin="$(($timeinmsec / 60000))"
if [[ "$timeinmin" -gt 1 ]]
then
        echo "$timeinmin Minutes idle time reported" >> /home/user/log.txt;
        echo $(date '+%X') >> /home/user/log.txt;
        echo "$line" >> /home/user/log.txt;
else
        echo "No idle time reported" >> /home/user/log.txt;
        echo $(date '+%X') >> /home/user/log.txt;
        echo "$line" >> /home/user/log.txt;
fi

Выходные данные я получаю

No idle time reported
05:24:01 PM

No idle time reported
05:25:01 PM

No idle time reported
05:26:01 PM

No idle time reported
05:27:01 PM
1
задан 17 December 2017 в 19:29

1 ответ

Удалось решить проблему. Мне пришлось добавить export DISPLAY=:0 вверху скрипта, поскольку эта задача выполняется cronjob и вызывающим xserver.

0
ответ дан 17 December 2017 в 19:29

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

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