通用外壳变量表达式的求值器
shellvars的Python项目详细描述
Homepage: | Shellvars Homepage |
---|---|
Download: | Shellvars on PyPI |
Documentation: | Shellvars Docs |
License: | MIT License |
Support: | Mailing list (testing-in-python@lists.idyll.org) |
Issue tracker: | Github Issues |
Build status: |
外壳变量
用于shell变量表达式的python解释器。
Shellvars支持Python2.6及更高版本,还应该支持Jython等。
支持以下表达式:
- $NAME
- ${NAME}
- ${NAME:-REPLACEMENT}
- ${NAME-REPLACEMENT}
- ${NAME:=REPLACEMENT}
- ${NAME=REPLACEMENT}
- ${NAME:?[ERRORMSG]}
- ${NAME?[ERRORMSG]}
- ${NAME:+REPLACEMENT}
- ${NAME+REPLACEMENT}
递归表达式也受支持。例如:
>>> from shellvars import evaluate >>> evaluate('${foo:-${bar:=baz}}', {}) ('baz', {'bar': 'baz'})
有关shell变量语法的详细信息,请参阅shell或posix 文档。
使用量
使用表达式和任何 要用于表达式的变量。变量键和值必须 两者都是弦外之音。变量dict中缺少的变量是 在空壳术语中被视为“未设置”。
返回值是一个经过计算的字符串,执行任何变量赋值 用这个词。
保留未设置的表达式
shellvars有一个特殊的模式,其中的表达式用于未设置的变量 保存而不是评估。这样就可以把它们传给 不需要用户特别引用,由shell解释。为了 实例:
>>> from shellvars import SKIP >>> evaluate('$foo $bar', {'foo': 'baz'}, absent=SKIP) ('baz $bar', {})
安装
使用PIP安装:
pip install shellvars
缺陷跟踪器
使用githubissue tracker。
释放
使用semver进行版本决策。
释放:
- 标记回购协议,如1.2.3
- 创建一个签名的sdist和wheel
- 上传到pypi
版权
版权所有(c)2015 Robert Collins<;robertc@robertcollins.net>;
兹免费准许任何人取得副本 本软件和相关文档文件(“软件”)的 在软件中不受限制,包括但不限于 使用、复制、修改、合并、发布、分发、再授权和/或出售 软件的副本,并允许软件的用户 在满足以下条件的情况下,可以这样做:
上述版权公告及本许可公告须包括在 软件的拷贝或大部分。
本软件按“原样”提供,无任何形式的保证,明示或 默示的,包括但不限于适销性保证, 适合特定目的和不侵权。在任何情况下 作者或版权所有者应对任何索赔、损害或其他 责任,无论是在合同诉讼、侵权诉讼或其他诉讼中, 不属于或与本软件有关,或使用或与本软件的其他交易有关。 软件。