PKZipC v14 en Windows: cómo pasar nombres de archivos que no sean ASCII en el archivo @list

PKZipC v14 en Windows: cómo pasar nombres de archivos que no sean ASCII en el archivo @list

La documentación de PKZipC menciona la -utf8opción de almacenar nombres de archivos que no sean ASCII como UTF-8 dentro de un ZIP, pero no dice cómo agregar dichos archivos usando un @listargumento a pkzipc -add.

Probé varias combinaciones de ejecución con/sin el -utf8conmutador y uso @listde archivos guardados en codificaciones UTF-8 o UTF-16 con/sin BOM, pero todas fallaron.

Me pregunto si alguien tuvo más suerte al hacer que esto funcione.

Respuesta1

Como has probado todas las combinaciones posibles del -utf8switch y @list con codificación UTF-8 o UTF-16 e incluso con/sin BOM, no veo qué más puedes hacer usando PKZipC para Windows y sus parámetros.

Aconsejaría ponerse en contacto con el soporte de PKWARE y presentar una queja, aunque es posible que esto no traiga una solución inmediata.

Mientras tanto, deberá transformar los nombres de archivos que contengan caracteres que no sean ASCII en nombres sin dichos caracteres. Este formato se denomina forma abreviada del nombre de archivo, que es básicamente el antiguo formato DOS del nombre de archivo 8.3. El dir /xcomando mostrará estos nombres.

Para obtener los nombres cortos de varios archivos, consulte la publicación ¿Cómo puedo encontrar la ruta corta de un directorio/archivo de Windows? donde se enumeran varias soluciones. me gustó especialmenteesta respuesta que propuso la siguiente frase:

cmd /c for %A in ("C:\Program Files") do @echo %~sA

A continuación se muestra un ejemplo de cómo puede utilizarlo:

ingrese la descripción de la imagen aquí


Como usted dice que su departamento de TI ha decidido deshabilitar los nombres cortos de NTFS 8.3 en sus recursos compartidos de red, sugeriría buscar una alternativa. Algunas que sugeriría probar son:

Respuesta2

Usando el símbolo del sistema, intente esto:

  • ejecutar comando chcp 65001para cambiar cmdla página de códigos autf8

  • Luego ejecuta tu pkzipccomando con-utf8

Espero que te ayude.

información relacionada