Відповіді:
Ви можете отримати стандартні дескриптори файлів цього процесу, наприклад stdout:
tail -f /proc/<pid>/fd/1
# ls -la /proc/24510/fd/1 lrwx------ 1 root root 64 Oct 31 08:34 /proc/24510/fd/1 -> socket:[444026]
Тут є кілька варіантів. Перший - перенаправити висновок команди на файл, а потім використовувати tailдля перегляду нових рядків, які додаються до цього файлу в режимі реального часу.
Інший варіант - запустити програму всередині screen, яка є свого роду текстовим термінальним додатком. Екранні сеанси можна приєднувати та від'єднувати, але номінально вони призначені лише тим самим користувачем, тому, якщо ви хочете поділитися ними між користувачами.
В іншому випадку, якщо ви хочете, ви можете простежити процес і побачити, що він робить strace:
strace -e trace=open -p 22254 -s 80 -o output.txt
-p PID: Приєднайте до процесу PID ідентифікатора процесу та починайте трасування.-s SIZE: Вкажіть максимальний розмір рядка для друку (за замовчуванням - 32).-o filename: Запишіть вихідний слід у назву файлу, а не на екран (stderr).sudostrace для приєднання до процесу, і використовувати -o ~/output.txtтак, щоб файл залишився у вашій домашній папці.
Ви можете використовувати ці команди, наведені нижче, щоб приєднати запущений процес до іншого терміналу:
retty(Сторінка людини: retty )reptyrscreenПриклад:
screen -S PID
retty $(pgrep PID)
reptyr PID
sudo apt-get install rettyале у retty є обмеження. Ознайомтеся із довідковою сторінкою, зазначеною у відповіді.