Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: как сделать выполнение по cron  (Прочитано 1382 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Xts

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1677
  • Arch Linux, Kernel 4.20
    • Просмотр профиля
как сделать выполнение по cron
« : 05 Сентября 2012, 21:10:05 »
нежно каждый час запускать файл stats.pl -vнаходящийся в /opt/stats/
перерыл уже пол инета, перечитал куча мануалов по крону, но он все равно не хочет его запускать(
подскажите как правильно сделать, может я чего не так делаю
ASUS Sabertooth 990FX R2.0
AMD FX-8350 x8@5Ггц, AMD Memory 16Гб
AMD Radeon R9 290X

Оффлайн satch

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 1561
  • Kubuntu 15.10 amd64
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #1 : 05 Сентября 2012, 21:58:58 »
-v - это --verbose?
может в этом проблема? крон не любит много мусора в stdout. зачем вам запуск с логом запуска, если запускать будете по крону?
Наше желание помочь прямопропорционально вашему желанию решить проблему

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #2 : 05 Сентября 2012, 22:37:32 »
Вы хоть привели бы строчку из крона, которой запускаете.
используемые переменные указали?

Оффлайн slam_but

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #3 : 06 Сентября 2012, 00:38:00 »
может проблемы с правами или путь неполный указан?

Оффлайн Xts

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1677
  • Arch Linux, Kernel 4.20
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #4 : 06 Сентября 2012, 05:50:08 »
Vitsliputsli,
вот строка которую прописал в crontab
0 */1 * * * /opt/stats/start.shа сам start.sh не понимаю как сделать
ASUS Sabertooth 990FX R2.0
AMD FX-8350 x8@5Ггц, AMD Memory 16Гб
AMD Radeon R9 290X

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #5 : 06 Сентября 2012, 11:52:53 »
Что-то вроде этого должно быть:
#!/bin/bash
/usr/bin/perl /opt/stats/stats.pl
можно еще так записать:
/usr/bin/perl /opt/stats/stats.pl >/home/vitsliputsli/stats.log
чтобы прочитать об ошибках при запуске.

Как правило, многие забывают что CRON выполняется без переменных окружения, поэтому их нужно указывать вручную. Т.е. если приложение работает в GUI то нужно явно указать переменную DISPLAY, если использует русские символы, то нужно указывать LANG=ru_RU.utf8.
Если в терминале работает, а в CRON нет, то дело скорее всего в переменных.

Оффлайн Xts

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1677
  • Arch Linux, Kernel 4.20
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #6 : 06 Сентября 2012, 12:16:55 »
Vitsliputsli,
не работает(

Пользователь решил продолжить мысль 06 Сентября 2012, 13:10:50:
кстати, сам файл stats.pl без -v не запускается
« Последнее редактирование: 06 Сентября 2012, 13:11:11 от Xts »
ASUS Sabertooth 990FX R2.0
AMD FX-8350 x8@5Ггц, AMD Memory 16Гб
AMD Radeon R9 290X

Оффлайн satch

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 1561
  • Kubuntu 15.10 amd64
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #7 : 06 Сентября 2012, 14:50:47 »
0 * * * * /opt/stats/start.sh -v >/dev/null 2>&1
« Последнее редактирование: 06 Сентября 2012, 19:39:50 от satch »
Наше желание помочь прямопропорционально вашему желанию решить проблему

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #8 : 06 Сентября 2012, 16:12:08 »
Цитировать
кстати, сам файл stats.pl без -v не запускается
perl -v - это вывод инфо о версии и тп. С параметром -v программа вообще не выполняется!

Оффлайн Xts

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1677
  • Arch Linux, Kernel 4.20
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #9 : 06 Сентября 2012, 16:21:52 »
Vitsliputsli,
ну выполняется же с -v
ASUS Sabertooth 990FX R2.0
AMD FX-8350 x8@5Ггц, AMD Memory 16Гб
AMD Radeon R9 290X

Оффлайн Vitsliputsli

  • Старожил
  • *
  • Сообщений: 1293
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #10 : 06 Сентября 2012, 16:55:25 »
Как вы определяете что программа отработала?

Оффлайн Xts

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1677
  • Arch Linux, Kernel 4.20
    • Просмотр профиля
Re: как сделать выполнение по cron
« Ответ #11 : 06 Сентября 2012, 16:57:30 »
Vitsliputsli,
данные изменяются при обработке
ASUS Sabertooth 990FX R2.0
AMD FX-8350 x8@5Ггц, AMD Memory 16Гб
AMD Radeon R9 290X

 

Страница сгенерирована за 0.016 секунд. Запросов: 21.