【发布时间】:2020-04-20 09:39:39
【问题描述】:
我正在寻找通过直接解析ps eww输出从远程进程中提取环境变量(表示有诸如psutils之类的库但我宁愿不使用它们)
例如:
如果我运行a="foo bar" b=b sleep 100 而不是ps eww | grep sleep 将返回类似:
sleep 100 a=foo bar b=b ...
所以这种情况下的输出应该是:
dict = {"a" : "foo bar", b" : "b" }
到目前为止,我只是根据默认的空格分隔符获取此输出并使用split。但是空格是一个有效的参数(注意空格也可以是值的一部分,也可以是 key=val 格式的 2 个变量之间的分隔符。
知道谁将它拆分为 key=val 结构,以便空格也是值名称的有效字符(但对键名称无效)?
【问题讨论】:
-
这个dict是
psutil.Process().environ直接给你的,你不必担心环境变量的值包含特殊字符(空格、换行符、=)。你为什么不想使用它?
标签: python linux macos parsing environment-variables