Sobre o projeto

yq é uma ferramenta de linha de comando leve e portátil escrita em Go que permite aos usuários processar e manipular vários formatos de dados. Ela emprega uma sintaxe semelhante ao popular processador JSON jq, mas estende suas capacidades para suportar arquivos YAML, JSON, XML, CSV, TSV, TOML, HCL, INI e properties. As principais capacidades incluem: - Leitura, atualização e mesclagem de estruturas de dados em múltiplos arquivos. - Atualizações de arquivos no local (in-place) e a capacidade de usar variáveis de ambiente dentro de expressões. - Conversão entre diferentes formatos (ex: JSON para YAML, XML para YAML). - Suporte para arquivos YAML de múltiplos documentos e blocos de front-matter. - Operações avançadas, como manipulação de data/hora, ordenação de chaves e tratamento de comentários YAML, estilização, tags, âncoras e aliases. - Codificação e decodificação Base64. - Integração como GitHub Action para pipelines automatizados. A ferramenta é distribuída como um binário sem dependências e está disponível através de vários gerenciadores de pacotes, incluindo Homebrew, Snap, Chocolatey, Scoop e Winget, bem como através de containers Docker e Podman.