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


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Cron и Скрипт  (Прочитано 986 раз)

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

Оффлайн MaDRideR

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • OS X 10.9 Mavericks
    • Просмотр профиля
Cron и Скрипт
« : 10 Августа 2010, 19:09:00 »
Проблема такого рода, есть простой скриптик

#!/bin/bash

rsync -avz --delete mirrors.kernel.org::archlinux/core /home/mirror/repo/arch > /home/mirror/log/core_mirr_`date +%x_%X`
rsync -avz --delete mirrors.kernel.org::archlinux/extra /home/mirror/repo/arch > /home/mirror/log/extra_mirr_`date +%x_%X`
rsync -avz --delete mirrors.kernel.org::archlinux/community /home/mirror/repo/arch > /home/mirror/log/community_mirr_`date +%x_%X`
rsync -avz --delete mirrors.kernel.org::archlinux/community-testing /home/mirror/repo/arch > /home/mirror/log/community-test_mirr_`date +%x_%X`
rsync -avz --delete mirrors.kernel.org::archlinux/testing /home/mirror/repo/arch > /home/mirror/log/testing_mirr_`date +%x_%X`

#exit 0

=====
под рутом все делалось
=====

как обычно crontab -e
* */1 * * * /home/mirror/scripts/rsync_mirroring
скрипт не отрабатывает

если просто выполнить
/home/mirror/scripts/rsync_mirroring
то все пучком.

===
Так же если убрать `date +%x_%X` в конце вывода все пашет и через крон.
===
Вопрос: Варианты решения, что бы вывод был с датой и выполнялось все это через крон.

Пользователь решил продолжить мысль 10 Августа 2010, 19:28:08:
Блин что никто подобного не делал что ли
« Последнее редактирование: 10 Августа 2010, 19:28:08 от MaDRideR »
OS X 10.9
Деятельность. Интернет сети и маршрутизация

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: Cron и Скрипт
« Ответ #1 : 10 Августа 2010, 19:28:43 »
grep SHELL /etc/crontab

Оффлайн MaDRideR

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • OS X 10.9 Mavericks
    • Просмотр профиля
Re: Cron и Скрипт
« Ответ #2 : 10 Августа 2010, 19:30:28 »
grep SHELL /etc/crontab

bash стоит
SHELL=/bin/bash
OS X 10.9
Деятельность. Интернет сети и маршрутизация

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: Cron и Скрипт
« Ответ #3 : 10 Августа 2010, 19:38:56 »
$ echo $LANG
en_US.utf8
$ date +%x_%X
08/10/2010_07:38:22 PM
Ясно? :)

Оффлайн MaDRideR

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • OS X 10.9 Mavericks
    • Просмотр профиля
Re: Cron и Скрипт
« Ответ #4 : 10 Августа 2010, 19:44:06 »
неа :)


Пользователь решил продолжить мысль 10 Августа 2010, 19:44:20:
не совсем тебя понял

Пользователь решил продолжить мысль 10 Августа 2010, 19:45:25:
[mad@kamtvlocal log]$ echo $LANG
ru_RU.UTF-8
[mad@kamtvlocal log]$ date +%x_%X
11.08.2010_03:45:05
[mad@kamtvlocal log]$
OS X 10.9
Деятельность. Интернет сети и маршрутизация

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: Cron и Скрипт
« Ответ #5 : 10 Августа 2010, 19:49:33 »
Попробуйте выполнить:
LANG=en_US.utf8 echo >`date +%x_%X`%)

Это аналогично тому, что делается в вашем скрипте, запущенном из крона.

Оффлайн MaDRideR

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • OS X 10.9 Mavericks
    • Просмотр профиля
Re: Cron и Скрипт
« Ответ #6 : 10 Августа 2010, 19:59:29 »
Я так ничего уже не понимаю :) как решить проблему в данном случае?
OS X 10.9
Деятельность. Интернет сети и маршрутизация

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: Cron и Скрипт
« Ответ #7 : 10 Августа 2010, 20:19:15 »
Добавьте в начало скрипта:
LANG=ru_RU.utf8=)

Оффлайн MaDRideR

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • OS X 10.9 Mavericks
    • Просмотр профиля
Re: Cron и Скрипт
« Ответ #8 : 10 Августа 2010, 20:28:01 »
#!/bin/bash

LANG=ru_RU.utf8

rsync -avz --delete mirrors.kernel.org::archlinux/core /home/mirror/repo/arch > /home/mirror/log/core_mirr_`date +%x_%X`
rsync -avz --delete mirrors.kernel.org::archlinux/extra /home/mirror/repo/arch > /home/mirror/log/extra_mirr_
rsync -avz --delete mirrors.kernel.org::archlinux/community /home/mirror/repo/arch > /home/mirror/log/community_mirr_`date +%x_%X`
rsync -avz --delete mirrors.kernel.org::archlinux/community-testing /home/mirror/repo/arch > /home/mirror/log/community-test_mirr_`date +%x_%X`
rsync -avz --delete mirrors.kernel.org::archlinux/testing /home/mirror/repo/arch > /home/mirror/log/testing_mirr_`date +%x_%X`

#exit 0


не помогло

Пользователь решил продолжить мысль 10 Августа 2010, 20:29:09:
отрабатывает только одна строчка )) если и её привести в исходный вид, то скрипт не отрабатывает вообще
OS X 10.9
Деятельность. Интернет сети и маршрутизация

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: Cron и Скрипт
« Ответ #9 : 10 Августа 2010, 20:38:37 »
Сорри, я там ошибся.
Так должно сработать:
export LANG=ru_RU.UTF-8
А ещё измените формат вывода даты, чтобы там не было спец. символов.
Сделайте что-то типа такого:
"$(date '+%Y.%m.%d-%X')"
« Последнее редактирование: 10 Августа 2010, 20:44:33 от ArcFi »

Оффлайн MaDRideR

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • OS X 10.9 Mavericks
    • Просмотр профиля
Re: Cron и Скрипт
« Ответ #10 : 10 Августа 2010, 20:42:09 »
****ть алилуя, спасибо тебе человек ! :) да будет зеркало! )

Пользователь решил продолжить мысль 10 Августа 2010, 20:43:16:
только после вывода locale -a | grep ru_RU

export LANG=ru_RU.utf8 без тире, с ней не отработало :) первый раз с такой фигней столкнулся
OS X 10.9
Деятельность. Интернет сети и маршрутизация

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Cron и Скрипт
« Ответ #11 : 10 Августа 2010, 20:43:22 »
Еще не помешает:
Цитировать
* */1 * * * /home/mirror/scripts/rsync_mirroring > /dev/null
или убрать опцию -v у rsync

крон не любит много мусора в stdout

Оффлайн MaDRideR

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • OS X 10.9 Mavericks
    • Просмотр профиля
Re: Cron и Скрипт
« Ответ #12 : 10 Августа 2010, 20:51:58 »
Еще не помешает:
Цитировать
* */1 * * * /home/mirror/scripts/rsync_mirroring > /dev/null
или убрать опцию -v у rsync

крон не любит много мусора в stdout

ок, поправим :)
OS X 10.9
Деятельность. Интернет сети и маршрутизация

 

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