Saltar al contenido principal

archivos · Referencia de comando

qzx extractZip

Qué hace

Extrae un archivo ZIP después de validar rutas, tipos, límites y conflictos en el destino.

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.6a11. La documentación corresponde al checkout alpha 0.2.2.0.6a11.

Seguridad y efectos

Puede modificar estado

Sin parámetro dry-run documentado

No invoca programas nativos según la clasificación

Sin uso de red documentado

El resultado puede depender de permisos

QZX valida todo el archivo y prepara la extracción fuera del destino antes de aplicar cambios. Rechaza recorridos de ruta, archivos especiales, rutas ambiguas y límites excesivos. Conserva los archivos existentes de forma predeterminada; --overwrite exige primero un respaldo recuperable del directorio de destino.

Antes de mutar, QZX crea un archivo de recuperación; --dangerously-bypass-approvals-and-sandbox/--yolo lo omite explícitamente.

Esta clasificación de seguridad fue revisada por OpenAI Codex (authorized project audit) contra el digest de implementación sha256:368d8794dddd77bf435738e135fbc2e02f3f9f58b84a581b2c0fb06dfd093da4 el 2026-07-30.

Sintaxis exacta

qzx extractZip <zip_path> [target_path] [overwrite] [max_files] [max_total_size_mb] --json

Parámetros

Desliza o usa la barra horizontal para ver todas las columnas.

NombreTipoObligatorioPredeterminadoDescripción
zip_pathstrNo declaradoRuta del archivo ZIP que se extraerá
target_pathstrNo"."Directorio de destino en el que se extraerán los archivos (valor predeterminado: directorio actual)
overwriteboolNofalseReemplaza entradas en conflicto después de respaldar el directorio de destino
max_filesintNo10000Cantidad máxima de archivos que se aceptarán dentro del ZIP (valor predeterminado: 10000)
max_total_size_mbintNo1024Tamaño total máximo sin comprimir, en mebibytes (valor predeterminado: 1024)

Ejemplos de entrada

qzx extractZip project.zip

Extraer project.zip sin reemplazar archivos existentes

qzx extractZip project.zip C:/extracted-app

Extraer project.zip en C:/extracted-app

qzx extractZip project.zip C:/extracted-app --overwrite

Reemplazar conflictos después de crear un respaldo del directorio de destino

Para obtener la carga estructurada completa, añade --json: qzx extractZip <zip_path> [target_path] [overwrite] [max_files] [max_total_size_mb] --json

Ejemplo de salida representativa

Este JSON ilustrativo deriva del contrato de resultado respaldado por la implementación actual. Muestra lo que el comando puede devolver sin afirmar que es una ejecución grabada; los valores varían según entradas, equipo, permisos y herramientas opcionales.

Comando del ejemplo: qzx extractZip project.zip --json

{
    "success": true,
    "message": "Extracts files from a ZIP archive after validating paths, types, limits, and destination conflicts. In this illustrative example, the command completed successfully.",
    "meta": {
        "command": "extractZip",
        "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": 0,
        "schema_version": 1
    },
    "directories_created": "Example value",
    "files_extracted": "C:\\project\\example.txt",
    "files_replaced": "C:\\project\\example.txt",
    "limits": {
        "max_files": "C:\\project\\example.txt",
        "max_total_size_mb": "Example value"
    },
    "overwrite": true,
    "skipped_traversals": [
        {
            "name": "example",
            "status": "ok"
        }
    ],
    "target_path": "C:\\project\\example.txt",
    "total_bytes_extracted": 3,
    "total_size_readable": 3,
    "zip_path": "C:\\project\\example.txt"
}
Ver el contrato de resultado JSON
{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "required": [
        "success",
        "message",
        "meta"
    ],
    "properties": {
        "success": {
            "type": "boolean"
        },
        "message": {
            "type": "string"
        },
        "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
        },
        "directories_created": [],
        "files_extracted": [],
        "files_replaced": [],
        "limits": {
            "type": "object",
            "properties": {
                "max_files": [],
                "max_total_size_mb": []
            },
            "additionalProperties": true
        },
        "overwrite": [],
        "skipped_traversals": {
            "type": "array"
        },
        "target_path": [],
        "total_bytes_extracted": [],
        "total_size_readable": [],
        "zip_path": []
    },
    "additionalProperties": true
}

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: requiere un entorno privilegiado controlado.

Evidencia y procedencia

Canal de documentación
Documentación de desarrollo 0.2.2.0.6a11 · main · sha256:d1bf56371df81b2a79619d8219eed92ccf790be1584c528e211381ca7aa85302
Disponibilidad
0.2.2.0.6a11 o anterior

Sigue explorando

Estos comandos también pertenecen a la categoría de archivos. Compáralos para elegir la operación que mejor resuelva tu tarea.

Explorar todos los comandos de QZX