Bash: 获取 stderr 和 stdout 的位置
Bash: get location of stderr and stdout
假设,我在后台启动一个进程并将其 stdout
和 stderr
重定向到某处的任意文件。几个月后,该过程仍然是 运行,我忘记了那个文件在哪里。如果我知道进程的 ID,我如何以编程方式确定它发送输出的位置?
使用Linux,您可以运行:
ls -l /proc/PROCESS_ID/fd/1 /proc/PROCESS_ID/fd/2
假设,我在后台启动一个进程并将其 stdout
和 stderr
重定向到某处的任意文件。几个月后,该过程仍然是 运行,我忘记了那个文件在哪里。如果我知道进程的 ID,我如何以编程方式确定它发送输出的位置?
使用Linux,您可以运行:
ls -l /proc/PROCESS_ID/fd/1 /proc/PROCESS_ID/fd/2