¿Qué es yq?
yq es un procesador de línea de comandos ligero y portátil para datos estructurados — YAML, JSON, XML, CSV, TOML y archivos properties — escrito en Go por Mike Farah. Usa una sintaxis estilo jq, así que todo lo que sabes de jq se transfiere directamente: consulta, transforma, fusiona y edita archivos in situ, en scripts y pipelines, con un único binario sin dependencias.
yq basado en python que se encuentra en algunos archivos; este paquete lo reemplaza limpiamente, y no requiere python ni jq.
⚡ Características principales de yq
🔄 Seis formatos
YAML, JSON, XML, CSV/TSV, TOML y properties — lee uno, genera otro: yq -o=json '.' config.yaml convierte en un solo paso.
🧠 Sintaxis estilo jq
Rutas, pipes, funciones y operadores familiares. Si sabes escribir un filtro de jq, ya sabes usar yq con YAML.
✏️ Edición in situ
yq -i '.spec.replicas = 3' deploy.yaml — ediciones con scripts a manifiestos de Kubernetes, configuraciones de CI y archivos Compose, con los comentarios preservados.
📦 Cero dependencias
Un único binario estático en Go. Sin runtime, sin librerías, sin python — ideal para contenedores mínimos y runners de CI.
🔀 Fusiones y anchors
Fusiona en profundidad varios archivos, resuelve anchors y alias de YAML, maneja flujos multi-documento — los casos difíciles de YAML bien resueltos.
📖 Página de manual incluida
Este paquete incluye la página de manual completa junto al binario — man yq funciona sin conexión, siguiendo las convenciones de Debian.
🏆 ¿Por qué instalarlo con apt?
- Apto para flotas: fija un solo repositorio en tus imágenes base y cada servidor, contenedor y runner de CI obtiene el mismo yq actualizado
- Sin curl-to-bin: un repositorio firmado con GPG en lugar de descargar binarios a mano en
/usr/local/bin - El yq correcto: garantiza la semántica de mikefarah/yq v4 en todas partes — sin sorpresas del envoltorio en python en algunas máquinas
- Actualizaciones automáticas: las nuevas versiones upstream llegan con tu
apt upgradehabitual - Multi-arch: amd64, arm64, armhf, ppc64el, s390x y riscv64
📦 Instalación desde deb-free.griffo.io
Paso 1: Agregar repositorio
Paso 2: Instalar yq
🚀 Primera ejecución
📦 Repositorio de construcción de paquetes
Los paquetes de Debian se construyen y mantienen automáticamente en este repositorio de GitHub:
- 📂 yq-debian - Latest release builds
🔗 Paquetes relacionados
También disponible desde deb.griffo.io:
- k9s - TUI de Kubernetes — combina con yq para manejar manifiestos
- lazydocker - TUI de Docker para los archivos Compose que acabas de editar
- just - Un ejecutor de comandos para envolver tus one-liners de yq
💝 Apoya este proyecto
Si este repositorio te ahorra tiempo y esfuerzo, ¡considera apoyarlo!