Здравствуйте. Мне нужно запускать в бэкграунде процессы к которым позже можно вернуться и которые будут продолжать работать в фоне после того как я выйду из терминала PuTTy(pts/0). В сети нашёл способ с помощью команды screen. Мой вариант запуска выглядит так:
screen -d -m -S name websocat -t -u tcp-l:127.0.0.1:1234 reuse-raw:- | websocat wss://pubsub-edge.twitch.tv
Где левая часть команды до знака «|» запускает демона который слушает порт 1234 на моем компе и в случае когда на порт поступают данные то перенаправляет их в stdin другой программы (правая часть команды после знака «|») -S name - имя фоновой задачи -d укажет, что скрин нужно свернуть, а ключ -m - что его нужно для начала создать.
И все вроде бы работает, но проблема начинается когда я перенаправляю стандартный вывод stdout и ввод stdin. Когда я разворачиваю скрин websocat и смотрю что там происходит, при этом открываю второй терминал и конекчусь к порту 1234 (nc 127.0.0.1 1234) и ввожу туда данные, то в окне со screen’ом вижу эту информацию на экране, хотя по моей логике она должна перенаправляться в правую часть команды (| websocat wss://pubsub-edge.twitch.tv). Без утилиты screen все работает как надо, но вот при её попытке использования получаю не совсем тот результат который мне нужен. Как это можно исправить и какие есть ещё варианты запуска процессов в фоне с возможностью их продолжения работы после выхода из терминала и возможностью достать процесс из фона после того как заново подключусь к консоле?