desarrollo · Referencia de comando
qzx compareFiles
Qué hace
Compara archivos de texto línea por línea y archivos binarios mediante bytes exactos y SHA-256.
Madurez del comando: Alpha
Disponible para uso real y retroalimentación mientras su interfaz y comportamiento todavía pueden evolucionar. Esta es la evaluación actual del checkout de desarrollo. Cada futuro tag inmutable de release conservará la evaluación exacta incluida en esa versión. Disponible en PyPI 0.2.2.0.8. La documentación corresponde al checkout alpha 0.2.2.0.8.
Comportamiento y protecciones integradas
Inspecciona sin cambiar el estado
Ejecución directa para esta operación
Funciona sin invocar programas nativos
Funciona sin usar la red
Diseñado para funcionar sin elevación
Esta clasificación de seguridad fue revisada por OpenAI GPT-5.6 Pro contra el digest de implementación sha256:14fc4e563390c03c8b4fc17e1efdc444e275ec2e8f03986ccaf5153e2e407d2e el 2026-08-25.
Sintaxis exacta
qzx compareFiles <file1> <file2> [mode] [max_bytes] --jsonParámetros
Desliza o usa la barra horizontal para ver todas las columnas.
| Nombre | Tipo | Obligatorio | Predeterminado | Descripción |
|---|---|---|---|---|
| file1 | str | Sí | No declarado | Ruta al primer archivo |
| file2 | str | Sí | No declarado | Ruta al segundo archivo |
| mode | str | No | "full" | Modo de comparación: "full" (completo), "summary" (resumen) o "percent" (porcentaje) |
| max_bytes | int | No | 1048576 | Tamaño máximo permitido de cada archivo, en bytes (1 MiB de forma predeterminada) |
Ejemplos de entrada
qzx compareFiles "file1.py" "file2.py"Comparar dos archivos Python y mostrar todas las diferencias
qzx compareFiles "file1.txt" "file2.txt" "summary"Mostrar un resumen de diferencias entre dos archivos de texto
qzx compareFiles "version1.js" "version2.js" "percent"Mostrar el porcentaje de similitud entre dos archivos JavaScript
qzx compareFiles "image-a.png" "image-b.png"Comprobar si dos archivos binarios son exactamente iguales mediante bytes y SHA-256
Para obtener la carga estructurada completa, añade --json: qzx compareFiles <file1> <file2> [mode] [max_bytes] --json
Ejemplo de salida observada
Capturado con QZX 0.2.2.0.8 en Windows 11; código de salida 0. Los valores dependientes del host y la duración pueden variar.
Comando del ejemplo: qzx compareFiles ../artifacts/qzx-evidence/compare-files/before.txt ../artifacts/qzx-evidence/compare-files/after.txt full --json
{
"success": true,
"file1": "../artifacts/qzx-evidence/compare-files/before.txt",
"file2": "../artifacts/qzx-evidence/compare-files/after.txt",
"identical": false,
"added_lines": 1,
"removed_lines": 1,
"total_changes": 2,
"diff": "Differences between '../artifacts/qzx-evidence/compare-files/before.txt' and '../artifacts/qzx-evidence/compare-files/after.txt':\n--- ../artifacts/qzx-evidence/compare-files/before.txt\n+++ ../artifacts/qzx-evidence/compare-files/after.txt\n@@ -1,2 +1,2 @@\n shared line\n-before\n+after\n\nStatistics:\n- Added lines: 1\n- Removed lines: 1\n- Total changes: 2",
"message": "Compared '../artifacts/qzx-evidence/compare-files/before.txt' with '../artifacts/qzx-evidence/compare-files/after.txt': 1 added and 1 removed lines.",
"content_type": "text",
"comparison_basis": "decoded_text_lines",
"byte_identical": false,
"bytes_file1": 21,
"bytes_file2": 20,
"encoding_file1": "utf-8",
"encoding_file2": "utf-8",
"encoding_confidence_file1": 1,
"encoding_confidence_file2": 1,
"sha256_file1": "66b132726d57d857c416bf212c2ac4758f8088ffd9144b01fca3f412dd0e163a",
"sha256_file2": "245ea69b327e3ad2ea5f90573f1a6357e076642171ad33720bd183fd7aed18f9",
"similarity_available": true,
"mode": "full",
"max_bytes": 1048576,
"meta": {
"command": "compareFiles",
"command_maturity": {
"stage": "alpha",
"label": "Alpha",
"sequence": 2,
"public_executable": true,
"stability": "interface_may_change",
"summary": "Available for real use and feedback while its interface and behavior can still evolve.",
"promotion_review_required": false,
"assessment_scope": "development_checkout"
},
"duration_ms": 5.218,
"schema_version": 1
}
}Ver el contrato de resultado JSON
{
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"message": {
"type": "string"
},
"error": {
"type": "string"
},
"error_code": {
"type": "string"
},
"remediation": {
"type": "string"
},
"file1": {
"type": "string"
},
"file2": {
"type": "string"
},
"mode": {
"type": "string",
"enum": [
"full",
"summary",
"percent"
]
},
"identical": {
"type": "boolean"
},
"added_lines": {
"type": "integer"
},
"removed_lines": {
"type": "integer"
},
"total_changes": {
"type": "integer"
},
"diff": {
"type": "string"
},
"similarity": {
"type": "number"
},
"lines_file1": {
"type": "integer"
},
"lines_file2": {
"type": "integer"
},
"identical_lines": {
"type": "integer"
},
"changes": {
"type": "integer"
},
"summary": {
"type": "string"
},
"content_type": {
"type": "string",
"enum": [
"text",
"binary"
]
},
"comparison_basis": {
"type": "string"
},
"byte_identical": {
"type": "boolean"
},
"bytes_file1": {
"type": "integer"
},
"bytes_file2": {
"type": "integer"
},
"max_bytes": {
"type": "integer"
},
"encoding_file1": {
"type": [
"string",
"null"
]
},
"encoding_file2": {
"type": [
"string",
"null"
]
},
"encoding_confidence_file1": {
"type": [
"number",
"null"
]
},
"encoding_confidence_file2": {
"type": [
"number",
"null"
]
},
"sha256_file1": {
"type": "string"
},
"sha256_file2": {
"type": "string"
},
"similarity_available": {
"type": "boolean"
},
"meta": {
"type": "object",
"required": [
"command",
"command_maturity",
"duration_ms",
"schema_version"
],
"properties": {
"command": {
"type": "string"
},
"command_maturity": {
"type": "object",
"required": [
"stage",
"label",
"sequence",
"public_executable",
"stability",
"summary",
"promotion_review_required",
"assessment_scope"
],
"properties": {
"stage": {
"type": "string"
},
"label": {
"type": "string"
},
"sequence": {
"type": "integer"
},
"public_executable": {
"type": "boolean"
},
"stability": {
"type": "string"
},
"summary": {
"type": "string"
},
"promotion_review_required": {
"type": "boolean"
},
"assessment_scope": {
"type": "string"
},
"note": {
"type": "string"
},
"review": {
"type": "object",
"required": [
"reviewed_on",
"rationale",
"evidence"
],
"properties": {
"reviewed_on": {
"type": "string",
"format": "date"
},
"rationale": {
"type": "string"
},
"evidence": {
"type": "array",
"minItems": 1,
"items": {
"type": "string"
}
},
"replacement": {
"type": "string"
}
},
"additionalProperties": false
}
},
"additionalProperties": true
},
"duration_ms": {
"type": "number"
},
"schema_version": {
"type": "integer"
}
},
"additionalProperties": true
}
},
"additionalProperties": true,
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"message",
"meta",
"success"
]
}Errores y límites
El contrato público exige success=false y un message descriptivo en fallos. Este catálogo aún no declara una taxonomía de errores específica para cada comando; revisa el resultado y no infieras códigos inexistentes.
QZX está en alpha. Dependencias opcionales, permisos y capacidades del host pueden cambiar el resultado.
Flujo de evidencia: capturada y validada por digest.
Evidencia y procedencia
- Implementación
- src/qzx/commands/development/compare_files.py
- Canal de documentación
- Documentación de desarrollo 0.2.2.0.8 · main · sha256:9aa902dfb6b006017e52972bf7871fef49b03ec24ff80741231d743d0354bfc2
- Disponibilidad
- 0.2.2.0.8 o anterior
Sigue explorando
Comandos relacionados
Estos comandos también pertenecen a la categoría de desarrollo. Compáralos para elegir la operación que mejor resuelva tu tarea.
qzx cleanDevelopmentArtifactsBusca cachés, dependencias instaladas y artefactos de compilación generados; de forma predeterminada solo previsualiza.qzx deployProjectPrevisualiza o despliega un artefacto explícito por SSH con respaldo remoto verificado, validación SHA-256, promoción atómica, comprobación de salud y rollback automático.qzx auditRepositoryEjecuta auditorías de seguridad y calidad en un repositorio Git: secretos, archivos grandes, duplicados, cumplimiento de .gitignore y licencias.qzx diagnoseProjectInspecciona tecnologías, dependencias, flujos de validación, estado de Git, calidad del código y archivos grandes sin ejecutar scripts del proyecto.