URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 10247
[ Назад ]

Исходное сообщение
"Freebsd Cron и Mysql"

Отправлено botanik26rus , 17-Ноя-18 09:03 
Добрый день.

Frebsd 8.4 Имеется скрипт

#/usr/local/bin/bash
for ip in `mysql -Ns -h1.1.1.1 -upolzak -pparol baza -e "select DISTINCT inet_ntoa(conv(HEX(ip), 16, 10)) as ip from tablica"`
do
echo $ip >> "/usr/home/user/mysql.txt"
done;
...........
Если я его выполняю вручную, то все работает норм. Если ставлю выполнение через cron, то скрипт сам выполняется, но из БД приходит 0
Запись из crontab:

10      *     *       *       *       user     sh /home/user/test.sh
Из-за чего так может быть?


Содержание

Сообщения в этом обсуждении
"Freebsd Cron и Mysql"
Отправлено ыы , 17-Ноя-18 11:17 
>[оверквотинг удален]
> done;
> ...........
> Если я его выполняю вручную, то все работает норм. Если ставлю выполнение
> через cron, то скрипт сам выполняется, но из БД приходит 0
> Запись из crontab:
> 10      *     *
>       *    
>   *       user  
>    sh /home/user/test.sh
> Из-за чего так может быть?

переменные окружения не подгрузили. для скриптов выполняемых по крону -нельзя полагаться на умолчания- надо все необходимые переменные окружения указывать явно в теле скрипта.


"Freebsd Cron и Mysql"
Отправлено botanik26rus , 17-Ноя-18 12:17 
>[оверквотинг удален]
>> через cron, то скрипт сам выполняется, но из БД приходит 0
>> Запись из crontab:
>> 10      *     *
>>       *
>>   *       user
>>    sh /home/user/test.sh
>> Из-за чего так может быть?
> переменные окружения не подгрузили. для скриптов выполняемых по крону -нельзя полагаться
> на умолчания- надо все необходимые переменные окружения указывать явно в теле
> скрипта.

Спасибо
Подсказали на другом форуме изменить на

PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin

Изменил, мускул возращает, но не работает строка:

/sbin/ipfw table 100 list | /usr/bin/rev | /usr/bin/cut -c 6- | /usr/bin/rev > /usr/home/user/ipfw.txt

Что я не так делаю?


"Freebsd Cron и Mysql"
Отправлено михалыч , 18-Ноя-18 06:49 
> не работает строка:
> /sbin/ipfw table 100 list | /usr/bin/rev | /usr/bin/cut -c 6- | /usr/bin/rev > /usr/home/user/ipfw.txt

покажите кусок ipfw table 100 list
что хотите получить? чистый IP-адрес без маски подсети?
можно так /sbin/ipfw table 100 list | sed 's|/.*||'