Un clon de jq en Rust que prioriza la corrección, la velocidad y la simplicidad, disponible como CLI compatible con jq o como biblioteca.
jqlang/jq
Procesador ligero de JSON para la línea de comandos, escrito en C portable y sin dependencias en tiempo de ejecución, para recortar, filtrar, mapear y transformar JSON.
- Estrellas
- 36,047
- Forks
- 3,067
- Issues abiertos
- 419
- Último commit
- hace 5 días
¿Qué es?
jq funciona como sed, awk o grep para datos JSON. Se le pasan datos JSON por una tubería y se escribe una expresión de filtro para seleccionar campos, cambiar la forma de los objetos o calcular valores nuevos; el resultado se imprime en la salida estándar.
Está escrito en C portable y no tiene dependencias en tiempo de ejecución, por lo que se puede instalar como un único ejecutable independiente. En la página de versiones se publican binarios precompilados para macOS y Linux, y también hay una imagen de Docker. Para compilarlo desde el código fuente se necesitan libtool, make, automake y autoconf; el proyecto admite la vinculación estática y la compilación cruzada.
El proyecto ofrece un entorno de pruebas en línea en play.jqlang.org para probar filtros antes de usarlos en scripts.
Funciones clave
- 01Selecciona, filtra, mapea y transforma JSON mediante un lenguaje de expresiones de filtro.
- 02Se ejecuta como un ejecutable independiente, sin dependencias en tiempo de ejecución.
- 03Está escrito en C portable y se puede compilar con vinculación estática o compilación cruzada.
- 04Disponible como binarios precompilados para macOS y Linux, y como imagen de Docker.
- 05Incluye un entorno de pruebas en línea para probar filtros.
Casos de uso
- Extraer un campo, como el número de versión, de un archivo package.json en un script de shell.
- Cambiar la estructura de respuestas de API antes de guardarlas o mostrarlas.
- Filtrar desde la línea de comandos registros JSON o exportaciones de gran tamaño.
- Ejecutar transformaciones de JSON en Docker o en pipelines de CI sin instalar entornos de ejecución adicionales.
Inicio rápido
- 1
Descarga el binario precompilado desde la página de versiones
- 2
Cambia el nombre del archivo descargado a jq y haz que sea ejecutable
chmod +x jq - 3
O ejecútalo con Docker sobre un archivo package.json
docker run --rm -i -v "$PWD:$PWD" -w "$PWD" ghcr.io/jqlang/jq:latest '.version' package.json
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es jq?
- Procesador ligero de JSON para la línea de comandos, escrito en C portable y sin dependencias en tiempo de ejecución, para recortar, filtrar, mapear y transformar JSON. jq funciona como sed, awk o grep para datos JSON. Se le pasan datos JSON por una tubería y se escribe una expresión de filtro para seleccionar campos, cambiar la forma de los objetos o calcular valores nuevos; el resultado se imprime en la salida estándar.
- ¿jq es gratuito? ¿Qué licencia tiene?
- jq es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿jq sigue mantenido?
- Mantenimiento activo. El último commit de jq fue el 2 nov 2026.
- ¿Para qué puedo usar jq?
- Extraer un campo, como el número de versión, de un archivo package.json en un script de shell. Cambiar la estructura de respuestas de API antes de guardarlas o mostrarlas. Filtrar desde la línea de comandos registros JSON o exportaciones de gran tamaño. Ejecutar transformaciones de JSON en Docker o en pipelines de CI sin instalar entornos de ejecución adicionales.
- ¿Cómo se instala jq?
- Descarga el binario precompilado desde la página de versiones Cambia el nombre del archivo descargado a jq y haz que sea ejecutable: chmod +x jq O ejecútalo con Docker sobre un archivo package.json: docker run --rm -i -v "$PWD:$PWD" -w "$PWD" ghcr.io/jqlang/jq:latest '.version' package.json
- ¿Dónde consigo jq?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/jqlang/jq
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Herramienta de línea de comandos y lenguaje de consultas, al estilo de jq, para seleccionar, filtrar y transformar archivos Markdown.
Herramienta de línea de comandos y lenguaje de consulta al estilo de jq para inspeccionar y consultar formatos de archivos binarios, con decodificadores para decenas de formatos.
Herramienta de línea de comandos y biblioteca Go para consultar y modificar JSON, YAML, TOML, XML, CSV y otros datos estructurados con una sola sintaxis de selectores.
Paquete declarativo de Go para crear herramientas de línea de comandos, con subcomandos, flags, autocompletado de shell y generación de ayuda.
Un visor y procesador de JSON para la terminal que permite explorar, plegar y transformar JSON de forma interactiva desde el shell.