Uuencode y uudecode en línea

Pega texto o bytes en hex para codificarlos con uuencode, con o sin las líneas begin y end, o cambia a Decodificar y pega un bloque uuencode —de un correo antiguo, un mensaje de Usenet o un archivo shell— para recuperar su contenido.

Modo
Bytes como

Funciona en tu navegador: nada de lo que escribes se envía a ningún sitio.

Cómo se usa

  1. Elige Codificar o Decodificar.
  2. Para codificar, escribe un texto o elige «Bytes como: Bytes en hex» y pega el hex. Deja Añadir líneas begin/end para un bloque completo (begin 644 file.txt … end), o desactívalo para obtener solo las líneas de datos.
  3. Para decodificar, pega el bloque. Se ignora el texto antes de begin y después de end, así que puedes pegar el mensaje entero.

Cómo funciona

Cada grupo de 3 bytes (24 bits) se divide en cuatro valores de 6 bits. Cada valor v se escribe con el carácter de código 32 + v, salvo el 0, que se escribe como acento grave `. Una línea empieza con un carácter de longitud (32 + número de bytes) y lleva como máximo 45 bytes, es decir, 60 caracteres de datos. Un último grupo incompleto se rellena con bytes cero; el carácter de longitud indica al decodificador cuántos bytes son reales.

Ejemplo

El texto Cat son los bytes 43 61 74:

  • en bits: 010000 110110 000101 110100 = 16, 54, 5, 52;
  • sumando 32: 48, 86, 37, 84 = 0 V % T;
  • la línea lleva 3 bytes, así que empieza con 32 + 3 = 35 = #.

El bloque completo es:

begin 644 file.txt
#0V%T
`
end

Consejos

  • Si la decodificación falla, comprueba que el bloque no se haya reajustado: cada línea debe empezar con su carácter de longitud.
  • El 644 de la línea begin son los permisos Unix del archivo; aquí se ignoran, igual que el nombre.
  • Para trabajos nuevos, Base64 tiene mucho más soporte que uuencode.

Preguntas frecuentes

¿Qué es uuencode?

La codificación Unix-to-Unix, una forma de enviar archivos binarios por canales que solo transportan texto, como el correo de los primeros tiempos y Usenet. Cada 3 bytes se convierten en 4 caracteres imprimibles, cada línea lleva hasta 45 bytes y el bloque va entre una línea begin (permisos y nombre de archivo) y una línea end.

¿Por qué unos archivos usan espacios y otros acentos graves?

Al principio el valor 0 se escribía como espacio (código 32). Los sistemas de correo solían borrar los espacios al final de las líneas, así que codificadores posteriores, como GNU sharutils, escriben un acento grave ` en su lugar. El decodificador acepta ambos: resta 32 al código y se queda con los 6 bits bajos.

¿Qué indica el primer carácter de cada línea?

El número de bytes de esa línea más 32. M significa 45 bytes (77 − 32), la línea completa habitual; la última línea, más corta, empieza por otra letra, y antes de end va una línea con solo ` (cero bytes).

¿Decodifica bloques begin-base64?

No. uuencode -m escribe Base64 normal entre begin-base64 y ====, así que decodifica su contenido con un decodificador Base64.

Más en Desarrollo

Todas las herramientas de la categoría: Desarrollo ·Actualizado el 7 de noviembre de 2026

Opciones de privacidad

Google Analytics nos muestra qué herramientas se usan y si funcionan. Puede usar cookies. Tu elección se guarda en este navegador.