LINUX.ORG.RU

popen


0

0

Товарищи, помогите разобраться. Моя программа вызывает через popen другую и анализирует ее вывод, и соответственно что-то делает на его основании. Когда я запускаю свою программу просто в консоли - все работает нормально. Но если ее запускает по расписанию cron, то моя программа не может получит вывод программы открытой в popen. Мусор какой-то считываешь. В чем проблема может быть?

anonymous

может стоит показать код и той и этой программы?

alex_custov ★★★★★
()

может быть в переменных окружения / uid под которым выполняется программа?

isden ★★★★★
()

2alex_custov
та программа не моя, но вывод там обычным printf сделан.
У меня все просто:
FILE *fp = popen("prog","r");
....
while( getline(&buf, &len, fp) > 0 )
{
...
}
pclose(fp);


2isden
Все от root запускаю.

anonymous
()

Все. Понял, спасибо за подсказки. Хоть программа лежит в /usr/local/bin почему-то в popen все рано нужно полный путь писать.

anonymous
()
Ответ на: комментарий от anonymous

можно было в кронтаб файле просто указать в начале PATH=$PATH:/usr/local/bin

isden ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.