2

我正在编写一个程序(在 python 中),它调用一个单独的程序(通过子进程)。我发现在某些情况下,子程序会卡住运行。我可以通过运行 top 看到子程序,如果我按“c”,我可以看到完整的命令行。

我想要的是能够在我调用子程序时在命令行中粘贴调试数据(如当前线程 id 等),这样我就可以进一步调试我的问题。

有没有办法将注释放在命令行参数中,以便它们显示在顶部?

4

2 回答 2

1

我想不出直接的方法,但您可以编写一个小 shell 脚本,将实际命令传递给该脚本以运行以及参数调试信息。它会显示在 top/ps 输出中。

于 2012-10-16T16:18:40.640 回答
0

不要让他们发表评论,而是将他们置于环境中。例如,如果你有一个/proc文件系统,你可以这样做:

FOO=value cmd

当 top 显示命令的 pid 时,执行:

tr '\000' '\012' < /proc/pid/environ | grep FOO

在cmd的环境中查看FOO的值。如果值包含换行符,则需要更加小心显示,例如:

perl -n0E 'say if /FOO/' /proc/pid/environ
于 2012-10-16T16:22:46.127 回答