有什么办法吗?
我有一个导出几个vars并运行组件的脚本。
我希望在流程运行时找出其中一些变量的实际值。 (这适用于此,因为我将把这些值合并到另一个脚本/程序中)
vars本身是PID特定的(如果不明显的话,我对此很新。哈哈!)
谢谢!
答案 0 :(得分:4)
您可以查询/ proc / PID / environ以查找所有已定义的envvars
答案 1 :(得分:0)
我不确定我理解你的问题。但...... 如果您在bash脚本中导出了一些环境变量,那么它将在正在执行的进程环境中(这是因为子进程派生了进程创建它的所有环境变量)。
答案 2 :(得分:0)
我检查了environ文件中的那个进程,但奇怪的是,它并没有为该进程本身包含所有已定义的env变量。
导出的变量将特定于进程,但我不会总是知道它们。我正在寻找查询哪些env变量是特定的并为流程声明的,以及它们的值是什么。
答案 3 :(得分:0)
嗯,如果我理解正确 - 我想我会让脚本响应“kill”信号,以便使用“trap”提取它的运行时信息。您可以将元数据写入stdout。
可能在脚本中捕获SIGHUP,并将其写入stdout?
答案 4 :(得分:0)
如果是Linux,你可以这样做:
xargs -0 printf '%s\n' < /proc/${pid}/environ