zicht/goggle

此包已被废弃,不再维护。未建议替代包。

从命令行检查和编辑配置值

2.0.2 2017-02-20 10:10 UTC

README

      /)        /)
     /__   ___/
    (_._)-(_._)

不要与谷歌混淆。谷歌可以找到任何东西,Goggle可以帮助你查看任何东西。

几乎任何东西 ;)

这是什么?

一个命令行工具,可以轻松地从配置文件中读取值,并以多种不同的格式输出,考虑到了通过管道进行链式处理。

支持的格式

  • 输入:jsonyamlini
  • 输出:jsonyamlinitext(基于列)、格式化的控制台表格、Markdown 表格

用法

从配置文件中读取 '深层' 值

goggle get -i FILE element0..elementN [-O=FORMAT]

从路径 element0..elementN 读取值 FILE 并以指定格式输出。

例如,给定一个 JSON 字符串 {"a": {"b": {"c": 123}}},读取值 '123' 可以通过执行 goggle get a b c 来完成。

处理一组值

# Each of the records in the file FILE will be mapped by key `name`, and only fields
# 'author' and 'name'  are kept, other fields are dropped.

goggle process -i FILE mapBy name fields author name 

示例

示例 1

显示从 composer.lock 中提取的包名、版本和作者

goggle get -i ./composer.lock packages \
    | goggle process -I json fields name version authors \
    | goggle process -I json mapBy name 

或仅获取 symfony/symfony 的一个

goggle get -i ./composer.lock packages | goggle process -I json fields name version authors | goggle process -I json mapBy name | goggle get "symfony/symfony"

示例 2

从以下文件中读取数据库主机名并输出其值

goggle get -I yaml parameters database_host -O json -O text < app/config/parameters_staging.yml

给定以下文件

parameters:
    database_host: foo

这将输出

foo

示例 3

查看 composer lock 文件中所有可用的值

goggle get -i composer.lock -O dump

或从 composer lock 文件中读取所有包名和版本

goggle get -i composer.lock | goggle fields name version

示例 4

或将 yml 转换为 json

goggle get app/config/parameters.yml -O json

goggle get -I yaml -o json < ./app/config/parameters.yml

示例 5

在以下文件中设置数据库主机名

parameters:
    database_host: localhost

运行此命令

goggle set -e app/config/parameters_staging.yml parameters database_host remote_host

将值更改为

parameters:
    database_host: remote_host

当然,-e 标志对此命令特别有用,但不是必需的。

通过示例提供更多文档

阅读 behat 功能以查看更多可能性。

参考

阅读 wiki 以获取更详细的参考。