У меня есть вопрос относительно Linux в целом, хотя ответ на Bash будет оптимальным. Как можно прочитать stdin / stdout / stderr данного процесса (по PID) из скрипта? Другими словами, как я могу получить stdin / stdout / stderr другой программы из скрипта? Я пока не могу найти ответы в Интернете в другом месте.
Пока мне удалось найти идентификатор процесса
pidof {some-process-name}
И затем найдите местоположение его стандартного сокета (я думаю, это так и называется ...)
readlink -f /proc/{PID}/fd/0
Который обычно производит что-то вроде
/dev/pts/1
Тогда я смогу написать на этот стандартный
echo "Hello World" > /dev/pts/1
Однако попытка чтения из этого сокета
cat /dev/pts/1
Или из исходного файла
cat /proc/{PID}/fd/0
Оба ничего не производят, просто ожидая бесконечно, даже после того, как процесс завершен, и, таким образом, файл удален.
Любая помощь будет высоко ценится. Заранее спасибо!
UPDATE:
Нашел способ решения проблемы, см. Мой ответ ниже.