Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > Запуск задачи по крону - в окне


Автор: kulibinka 31.3.2012, 11:42
Работаю в линуксе.
Нужно чтобы при запуске некий скрипт исполнялся, но не втихую а в отдельном окне (чтобы если надо можно было анализировать что и как).

Сейчас команда в crontab
@reboot root cmd

запускает задачу втихую (т.е. никакого окна не видно, но в процессах видно что она исполняется).
Как ее модифицировать в оконный вариант?

Автор: Gluttton 31.3.2012, 17:16
Цитата(kulibinka @  31.3.2012,  11:42 Найти цитируемый пост)
Как ее модифицировать в оконный вариант? 


Пиши в cron задачу запустиить "окно" и уже окну передавай те или иные параметры...
Т.е. что то типа:
Код

xterm -T "Cron task" -e sh -c "ls -la"

Автор: kulibinka 31.3.2012, 20:48
Цитата(Gluttton @  31.3.2012,  17:16 Найти цитируемый пост)
1:
    
xterm -T "Cron task" -e sh -c "ls -la"


Не работает.

В кроне прописано
Код

@reboot user xterm -T "CMD" -e sh -c "ls -la"


В логе крона (смотрю файл /var/log/syslog - правильно понимаю что более детально что происходит негде посмотреть?) вижу:
Код

Mar 31 20:38:50 debian /usr/sbin/cron[1193]: (CRON) INFO (Running @reboot jobs)
Mar 31 20:38:50 debian /USR/SBIN/CRON[1205]: (user) CMD (xterm -T "CMD" -e sh -c "ls -la")
Mar 31 20:38:50 debian /USR/SBIN/CRON[1198]: (CRON) error (grandchild #1205 failed with exit status 1)

Автор: Gluttton 1.4.2012, 10:49
Попробуй команду "завернуть" в скрипт, а в cron'e вызывать уже скрипт (или перед запуском команды писать /bin/bash -c , но это менее удобно).

Автор: kulibinka 1.4.2012, 12:19
Не понял что надо сделать, объясните пожалуйста детальнее.

Автор: Gluttton 1.4.2012, 12:31
Создать скрипт и поместить в него команду:
Цитата

cat script.sh <<EOF
#!/bin/bash

xterm -T "CMD" -e sh -c "ls -la"
EOF

chmod +x script.sh


В cron'e вызывать созданный скрипт:
Цитата

* * * * * script.sh


Или же, что менее удобно, сразу писать в cron'e (в правильности скобок не разбирался - скорее всего ошибка):
Цитата

/bin/bash -c `xterm -T "CMD" -e sh -c "ls -la"`

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)