gpt4 book ai didi

python - 使用python脚本在linux中设置环境路径

转载 作者:太空宇宙 更新时间:2023-11-04 04:55:17 25 4
gpt4 key购买 nike

我正在 python 脚本中设置 linux 操作系统环境变量。看起来设置不正确。

使用的代码:

import os
from subprocess import call
squid_server_ip = 1.1.1.1
os.chdir("somepath")
call(["pwd"])
os.environ["LD_LIBRARY_PATH="] = ".:$LD_LIBRARY_PATH"
print os.environ['LD_LIBRARY_PATH']
call(["./DUModifier","-httpproxy", "{}:3128".format(squid_server_ip)])

输出:

 somepath
/export-path
./DUModifier: error while loading shared libraries: xBase39.so: cannot open shared object file: No such file or directory

手动执行:

 cd somepath
export LD_LIBRARY_PATH=.:$LD_LIBRARY
echo $LD_LIBRARY_PATH
.:.:/export-path
./DUModifier -httpproxy 1.1.1.1:3128

DUModifier Release2.1 2018-01-16T04:07:57-05:00
Configuration file to modify: xgDeployConfig.xml
New configurations are:
Option: httpproxy, value: 1.1.1.1:3128
Successfully modified config file: xgDeployConfig.xml

谁能帮我解决

最佳答案

您必须将环境传递到 call() 。像这样的事情:

myenv = {'LD_LIBRARY_PATH': ".:./export-path"}

(正如评论指出的,您不能在值中使用 $LD_LIBRARY_PATH :这是 bash 语法;在 python 中,您必须使用 os.environ['LD_LIBRARY_PATH'] 来获取当前值,然后在设置 myenv 时使用它)。然后在调用中使用它:

call(["./DUModifier","-httpproxy", "{}:3128".format(squid_server_ip)], env=myenv)

关于python - 使用python脚本在linux中设置环境路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48270723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com