我想使用strace
监控所有正在运行的进程,当进程结束时,应将strace
的输出发送到文件。
如何查找每个正在运行的proc PID。我还想在输出文件中包含进程名称。
答案 0 :(得分:0)
value
1725将是您要监视的进程的PID(您可以在" ps-firefox-bin"中找到PID,对于示例中的firefox)
firefox_trace.txt将是输出文件!
获得的方法是找到每个正在运行的proc PID,并使用该命令将它们写入输出文件中!
考虑doc, -p pid
使用进程ID pid附加到进程并开始跟踪。该 可以通过键盘中断信号随时终止跟踪( CTRL -C)。 strace将通过从跟踪中脱离来做出回应 进程让它(它们)继续运行。多个-p选项 除命令外,还可用于附加最多32个进程 (如果给出至少一个-p选项,则该选项是可选的。)
答案 1 :(得分:0)
使用-o
将输出存储到文件,或2>&1
将标准错误重定向到输出,以便您可以对其进行过滤(grep
)或将其重定向到文件({{ 1}})。
要在不知道PID但名称的情况下监控进程,可以使用> file
命令,例如
pgrep
其中strace -p $(pgrep command) -o file.out
是您的流程名称(例如command
,php
等)。
要了解有关参数的详情,请查看man strace
。