Понимание команды at для планирования другой команды

Я использую cron для планирования событий в Linux, но недавно я обнаружил команду «at».

sudo apt-get install at

Я не понимаю сферу действия этой команды:

  • Как бы вы запланировали команду с at, для которой обычно требуются права администратора?
  • Что рабочий каталог (pwd) команды запланирован на at?

Кроме того, все, что я пробовал до сих пор, не достигло того, что я пытался сделать.

Например, я попытался запустить gedit через одну минуту:

echo "gedit" | at now + 1 minute

Я ждал минуту, и ничего не произошло.

Я попытался выключить монитор через минуту:

echo "xset dpms force off" | at now + 1 minute

Я подождал минуту, и ничего не произошло.

Если я не могу «в» надежно выполнить задачу через минуту, как я могу быть уверен, что она выполнит то, что я ей скажу сделать завтра и после?

Что я здесь не хватает?

3
задан 16 June 2014 в 20:43

1 ответ

Попробуйте вместо этого:

~$  at now + 1 minute
at> ls -ahl > /tmp/at_test
at> ^D

Вы найдете /tmp/at_test после команды выполняемый.

, Если Вы хотите запустить некоторое приложение для GUI, необходимо определить DISPLAY переменная; Используйте echo $DISPLAY, чтобы узнать, что Вы отображаетесь

~$  at now + 1 minute
at> DISPLAY=:0 gedit
at> ^D

, Передача по каналу также в порядке:

echo "DISPLAY=:0 gedit" | at now + 1 minute
6
ответ дан 16 June 2014 в 20:43

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

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