Я видел, что есть некоторые вопросы по этой теме, но ни один из ответов не удовлетворил меня.Вот проблема: мне нужно написать два сокета (клиент и сервер), при этом клиент должен отправить на сервер программу awk с несколькими строками ввода.Нет проблем при отправке строк назад и вперед между сокетами.Предположим, я сохранил программу в строке command
и строку, которую я должен передать ей в input
, я попытался это сделать:
execl("/usr/bin/awk", command, input, (char *)0);
И это работает, программа awk запускается и пишетна стандартный вывод сервера и стандартный вывод.Дело в том, что если есть строки с ошибками, мне нужно отправить их обратно клиенту, что довольно невозможно, так как execl
не дает мне возможности сохранить результаты в массивах.Итак, кто-нибудь знает способ сделать это без использования system
и popen
?