Как выполнить команду livestreamer с кроном?

Так на днях я установил Ubuntu 14.04 LTS дома в разделе рядом с Windows 7. Поскольку я не могу быть дома для смотрения Гран-при Планера в прямом эфире, как передано потоком на YouTube, я решил использовать livestreamer (http://livestreamer.readthedocs.org/en/latest/) для сохранения его в файл с помощью его-o опции.

Это хорошо работает (я думаю - тест работает сегодня, и я буду видеть то, на что похоже, когда я возвращаюсь домой сегодня вечером) за исключением того, что я должен запустить команду прежде, чем уехать из дома утром, и широковещательная передача только запускается около середины дня, ведя к некоторой потраченной впустую пропускной способности утром.

Таким образом, очевидная вещь состоит в том, чтобы использовать крон для планирования его, правильно? Только, при выполнении его от крона он никогда не создает выходной файл. Строка крона, которую я использую, является этим:

38 23 13 05 * ./getfaisgpstream 2> /home/me/getfaisgpstream.log

Как я говорю, время приходит и уходит, и файл/home/me/faisgp20140513 не появляется как оно, делает при выполнении livestreamer от терминала. Я знаю о проблеме, где crontab строки должны закончиться в новой строке, и я целеустремленно оставил пустую строку у основания файла для питания это.

Я использовал crontab-e для изменения файла крона.

Вывод я вхожу в "getfaisgpstream.log":

./getfaisgpstream: 6: ./getfaisgpstream: livestreamer: not found

Содержание файла "./getfaisgpstream":

echo 
echo ======= livestreamer script running to get FAI SGP 2014 stream and save it in home: [`date`]
echo 

while true; do 
  livestreamer --hds-timeout 300 --hls-timeout 300 --rtmp-timeout 300 --http-timeout 300 --http-stream-timeout 300 -fo /home/me/Videos/faisgp`date +%Y%m%d` http://www.youtube.com/watch?v=xmy5VHAvNMg best
  echo ======= livestreamer terminated, restarting [`date`]
  echo; done

echo 
echo ======= livestreamer script exiting [`date`]
echo 

И да это делает это слишком устойчивым - но безотносительно, я после простого взлома прямо сейчас, который решит это для записи широковещательной передачи завтра.

1
задан 14 May 2014 в 11:07

1 ответ

Я нашел ответ на свой вопрос: крон не получает те же переменные среды, которые делает Ваш терминал.

Это, конечно, не получает Вашу домашнюю папку как начинающий рабочий каталог. Поэтому высказывание...

./getfaisgpstream

... не работает. То, что необходимо сделать вместо этого:

/home/me/getfaisgpstream

, Так как это также не получает тот же путь, который Вы делаете в своем терминале, говоря...

livestreamer --hds-timeout 300 ...

... не работает также. То, что необходимо сделать вместо этого:

/usr/local/bin/livestreamer
2
ответ дан 11 November 2019 в 09:38

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

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