2

有什么办法可以做到这一点?

我有一个脚本可以导出一些变量并运行一个组件。

我正在寻找在进程运行时找出其中一些变量的实际值。(这里适用,因为我会将这些值合并到另一个脚本/程序中)

变量本身是特定于 PID 的(如果这不明显,我对此很陌生。哈哈!)

谢谢!

4

5 回答 5

4

您可以查询 /proc/PID/environ 以获取所有已定义的环境变量

于 2009-07-29T19:28:02.313 回答
0

嗯,如果我理解正确 - 我想我会让脚本响应“kill”信号,以便使用“trap”提取它的运行时信息。您可能会将元数据写入标准输出。

也许在您的脚本中捕获 SIGHUP 并将其写入标准输出?

于 2009-09-17T00:12:02.077 回答
0

如果是 Linux,你可以这样做:

xargs -0 printf '%s\n' < /proc/${pid}/environ
于 2011-01-12T23:46:16.017 回答
0

我不确定我是否理解你的问题。但是......如果你在你的bash脚本中导出一些环境变量,那么这将是在它正在执行的进程的环境中(这是因为子进程派生了创建它的进程的所有环境变量)。

于 2009-07-29T19:32:19.667 回答
0

我检查了该进程的环境文件,但奇怪的是,它本身并不包含该进程的所有定义的环境变量。

导出的变量将特定于某个进程,但我并不总是知道它们。我正在寻找查询哪些环境变量是特定的并为进程声明的,以及它们的值是什么。

于 2009-07-30T12:13:57.873 回答