вариант1, требуется доступ к root для того чтобы внести изменения в sudo
сделать скрипт с содержимым, к примеру
echo $1 > /proc/$2/fd/1
прописать его в sudo на беспарольный запуск (как это делается правильно лучше загуглить и прочитать)
%user% ALL=NOPASSWD:/path/to/script.sh
после чего запускать
$ sudo /path/to/script.sh 123 $PID
и sudo это скрипт будет выполнять от рута без запроса пароля.
а уж что послать и номер пида передаешь в скрипт через параметры.
вариант2:
создать
именованный канал (fifo), подключить на прослушивание к нему прогамму в которую надо послать данные (пусть будет прога1). прога загрузится и будет ожидать поступления данных.
вывод проги2 направить в этот fifo. после отработки проги2 fifo закроется и прога1 закончит свою работу.
работает в пределах одной машины.