Yanıtlar:
Bu işlemin standart dosya tanımlayıcılarını alabilirsiniz, örneğin 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]
Burada birkaç seçenek var. Bunlardan biri komutun çıktısını bir dosyaya yeniden yönlendirmek ve sonra tail
o dosyaya gerçek zamanlı olarak eklenen yeni satırları görüntülemek için kullanmaktır .
Başka bir seçenek screen
de, bir tür metin tabanlı terminal uygulaması olan programınızı başlatmaktır . Ekran oturumları eklenebilir ve çıkarılabilir, ancak nominal olarak yalnızca aynı kullanıcı tarafından kullanılması amaçlanmıştır;
İsterseniz, işlemi izleyebilir ve bununla ne yaptığını görebilirsiniz strace
:
strace -e trace=open -p 22254 -s 80 -o output.txt
-p PID
: PID işlem kimliği ile işleme ekleyin ve izlemeye başlayın.-s SIZE
: Yazdırılacak maksimum dize boyutunu belirtin (varsayılan 32'dir).-o filename
: İzleme çıktısını, ekran (stderr) yerine dosya dosya adına yazın.sudo
Bir işleme eklemek için strace ile kullanmanız -o ~/output.txt
ve dosyayı ana klasörünüzde bırakmak için kullanmanız gerekir .
Çalışan bir işlemi başka bir terminale eklemek için aşağıda verilen bu komutları kullanabilirsiniz:
retty
(Man sayfa: retty )reptyr
screen
Örnek:
screen -S PID
retty $(pgrep PID)
reptyr PID
sudo apt-get install retty
ancak retty ile ilgili birkaç sınırlama vardır. Cevapta belirtilen man sayfasına bakınız.