从python更新$PATH
我想从python脚本I-e中更新路径,在$path中添加从python更新$PATH,python,bash,path,Python,Bash,Path,我想从python脚本I-e中更新路径,在$path中添加/tmp。原因是我使用的是aws lambda,它会查找aws iam验证器binary。现在,此二进制文件必须位于$PATH中,否则会引发错误: [Errno 2] No such file or directory: 'aws-iam-authenticator': 'aws-iam-authenticator' 因为只有/tmp可以在aws lambda中写入,所以我无法将此二进制文件移动到任何其他/bin/*或路径目录 我试着这
/tmp
。原因是我使用的是aws lambda,它会查找aws iam验证器
binary。现在,此二进制文件必须位于$PATH中,否则会引发错误:
[Errno 2] No such file or directory: 'aws-iam-authenticator': 'aws-iam-authenticator'
因为只有/tmp
可以在aws lambda中写入,所以我无法将此二进制文件移动到任何其他/bin/*
或路径目录
我试着这样做:
subprocess.call('PATH=$PATH:/tmp/',shell=True)
但它不起作用
Lambda路径:
PATH=/var/lang/bin:/usr/local/bin:/usr/bin/:/bin:/opt/bin
>>导入操作系统>>>os.environ[“PATH”]+=“/dodo/”>>打印操作系统environ[“PATH”]这似乎有效。在我看来,这是一个非常糟糕的主意。这将导致您放入tmp
文件夹中的任何程序都将位于您的PATH
中,这可能会导致在解决可执行实路径时出现问题。解决问题的更好方法是将aws iam authenticator
二进制文件移动到路径中的文件夹中(例如/opt/bin
)。您可能需要使用chmod
和chown
。如果您仍然想这样做:为什么不使用完整路径调用可执行文件呢/tmp/aws iam authenticator
如果脚本依赖于aws iam authenticator
,为什么要将其安装到/tmp
,而不是已经可以访问的地方?