使用存储在dotfile中的env运行命令

denv的Python项目详细描述


Build StatusLatest VersionPython Support

使用env运行script

从隐式.env文件注入变量的超简单运行程序 进入你选择的命令。

denv COMMAND [ARGS]

当前目录中需要一个.env文件,格式为:

KEY=VALUE
FOO=BAR
AGE=29
host=hostname=foo user=bar password=false

示例

创建保存变量的.env文件

$ cat .env
CONNECTION_STRING=host=foo user=bar password=baz

在POSIX命令中使用它们:

$ denv env | grep CONNECTION_STRING
host=foo user=bar password=baz

在运行python脚本时使用它们:

$ denv python -c 'import os;print(os.environ["host"])'
foo user=bar password=baz

为什么?

在TrustPilot,我们严格遵循 12-factors设计软件即服务 应用程序,尤其是应用程序外部的isolating your configuration概念。

使用环境变量是注入这些 在部署期间配置为应用程序。但我想在本地运行 将这些env-vars注入运行时非常简单 我自己。

环顾四周,您会很快发现许多实现:

但我倾向于在两个方面不同意他们的观点:

  1. 它们的目标往往是取代运行时默认值 environmentlib,只需读取一个文件就可以重载
  2. ^其中{a11}缺乏对 连接字符串其中每行可以有多个=

我想把它完全分开,所以运行时只关心 env-vars及其标准的访问方式,然后 runner注入这些变量是它唯一做的事情。

-`sloev<;sloev.github.io>;`\uu

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
我可以用C++代码使用java代码吗?   java使用JSR303在派生类中提供更具体的约束   java在这个查找唯一路径数算法中我做错了什么?   java如何为2个不同的服务提供商使用2个不同的SSL证书?   java在Gridview上绘制文本   java使用连接for循环构建字符串名   java StringBuilder拆分无法处理某些文件   java事件关注EditText   Java Web Start“找不到URL的缓存资源”   java程序从命令行运行的速度比在Eclipse中慢   java为什么HttpServletRequest会截断#字符上的url输入?   java自定义折叠工具栏平滑标题大小调整   使用Mockito对安卓 java中调用另一个静态函数的函数进行单元测试   http在java客户机中使用cachecontrol头   java如何使用。是否使用Delimiter从输入文件中排除标点符号和数字?   使用上下文作为参数/参数的java   java更有效地从Jar中提取文件   java为多个JButton提供相同的actionListener