Перейти к содержанию

Запуск утилиты из приложения ...


Рекомендуемые сообщения

Собственно вопрос больше относится к смене стандартного вывода при запуске утилиты.

Хочу из своей программы зхапустить "ifconfig > /var/log/ifconfig.log".

Пробую, execl("/bin/ifconfig",">","/var/log/ifconfig.log");

получаю ошибку в аргументах (пробовал всяко, и не только с execl, правильной работы не добился) Sad

Сейчас, предварительно создаю временный скрипт (вот изврат Smile) в котором и делается ifconfig с нужным выводом апотом из своей программы его запускаю.

Ссылка на комментарий
Поделиться на другие сайты

3.14 писал(а) Tue, 12 September 2006 23:38

Пробую, execl("/bin/ifconfig",">","/var/log/ifconfig.log");

получаю ошибку в аргументах

1.

man execl

...

The const char *arg and subsequent ellipses in the execl(), execlp(), and execle() functions can be thought of as arg0, arg1, ..., argn. Together they describe a list of one or more pointers to null-terminated strings that represent the argument list available to the executed program. The first argument, by convention, should point to the filename associated with the file being executed.

Обратите внимание на выделенный курсивом текст.

2.

Вы путаете средства оболочки и средства ядра. Ядро НЕ осуществляет перенаправление вывода, это делает шелл. Если хотите пользоваться системными функциями, пустите вывод через пайп, как советует AccessD, либо переопределите stdout - вновь запушенный процесс должен наследовать родительские дескрипторы.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...