DIRAC cfg文件读取器

diraccfg的Python项目详细描述


DIRAC cfg文件的解析器

CIPyPIConda-Forge

diraccfgDIRAC及其相关项目。 Python既可以作为一个完整的包来使用,也可以作为一个完整的包来设计 文件,可在src/diraccfg/cfg.py中找到。 独立模式允许dirac-install和飞行员使用 不需要pip的脚本。在

安装

pip install diraccfg

命令行用法

diraccfg的命令行模式主要用于转换 配置到JSON文件中,然后可以使用标准工具处理该文件 例如^{}。在

使用以下配置文件运行以下示例:

^{pr2}$

打印为JSON

$ diraccfg as-json example.cfg
{"DefaultModules": "DIRAC", "Sources": {"DIRAC": "git://github.com/DIRACGrid/DIRAC.git"}, "Releases": {"integration": {"Modules": "DIRAC, WebAppDIRAC, VMDIRAC", "Externals": "v6r6p8", "DIRACOS": "master"}, "v7r0-pre19": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r5, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "DIRACOS": "master"}, "v6r22p2": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r6, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "Externals": "v6r6p8", "DIRACOS": "v1r3"}, "v6r22p1": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r6, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "Externals": "v6r6p8", "DIRACOS": "v1r3"}}}

使用jq

$ diraccfg as-json example.cfg | jq '.Releases'{"integration": {"Modules": "DIRAC, WebAppDIRAC, VMDIRAC",
    "Externals": "v6r6p8",
    "DIRACOS": "master"},
  "v7r0-pre19": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r5, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1",
    "DIRACOS": "master"},
  "v6r22p2": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r6, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1",
    "Externals": "v6r6p8",
    "DIRACOS": "v1r3"},
  "v6r22p1": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r6, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1",
    "Externals": "v6r6p8",
    "DIRACOS": "v1r3"}}

获取稳定版本号的排序列表

$ diraccfg as-json example.cfg | jq '.Releases'| diraccfg sort-versions
["v6r22p2", "v6r22p1"]

获取版本号的排序列表,包括预发行版

$ diraccfg as-json example.cfg | jq '.Releases'| diraccfg sort-versions --allow-pre-releases
["v7r0-pre19", "v6r22p2", "v6r22p1"]

查找最新版本

$ diraccfg as-json example.cfg | jq '.Releases'| diraccfg sort-versions | jq -r '.[0]'
v6r22p2
$ diraccfg as-json example.cfg | jq '.Releases'| diraccfg sort-versions --allow-pre-releases | jq -r '.[0]'
v7r0-pre19

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

推荐PyPI第三方库


热门话题
Grails2.1.0/Java7在Windows8.1上从何处获取当前用户名?   JavaSpringJMSActiveMQ   java异常处理,捕获导致while循环停止   sql server 2008将日期时间解析为JAVA日期   java是第一个servlet,但无法打开它   如何在Java中使用XML bean创建典型的XML头?   java将iOs应用程序转换为Android   java将jsp页面内容读取到其他jsp页面中的html   客户端计算机中小型数据库应用程序的java实现   java同步和ServletContextListener   安卓 Java将所有转义字符替换为双转义   当我在布局单元中实现ScrollView时,java GridView的setOnItemLongClickListener不起作用(使用适配器)   禁用Java web服务端点Wsdl   java如何编写一个程序来反转用户输入的数字