Tom*_*mmy 41 command-line process
是否可以通过以类似于将fg
命令用于作业的方式使用其 PID 将终端附加到已经运行的进程?
小智 56
您可以获得该进程的标准文件描述符,例如stdout
:
tail -f /proc/<pid>/fd/1
Run Code Online (Sandbox Code Playgroud)
小智 11
这里有几个选项。一种是将命令的输出重定向到一个文件,然后用于tail
实时查看添加到该文件的新行。
另一种选择是在 中启动您的程序screen
,这是一种基于文本的终端应用程序。屏幕会话可以附加和分离,但名义上仅供同一用户使用,因此如果您想在用户之间共享它们。
否则,如果您希望可以跟踪该过程并查看它在做什么strace
:
strace -e trace=open -p 22254 -s 80 -o output.txt
Run Code Online (Sandbox Code Playgroud)
-p PID
: 使用进程 ID PID 附加到进程并开始跟踪。-s SIZE
: 指定要打印的最大字符串大小(默认为 32)。-o filename
: 将跟踪输出写入文件 filename 而不是屏幕 (stderr)。