Si es un usuario de Linux cuyas intuiciones están fuertemente aliadas con la tecnología web, entonces el concepto de MIME los tipos deben estar impresos en su ADN .
MIME Los tipos ayudan a identificar formatos de archivos y contenidos formateados durante su transmisión a través de Internet o cualquier otra red definida por el usuario.
Mientras está en un navegador web y recibe un archivo enviado por un servidor web a través de HTTP antes de que el navegador web elija un método adecuado para mostrar el archivo, el navegador web primero consultará el MIME tipos para determinar el tipo de archivo que está a punto de manejar.
Conceptualización de tipos MIME
MIME o Tipos de extensiones de correo de Internet multipropósito , ayuda a los usuarios de Internet a estandarizar la clasificación de los tipos de archivos. Para comprender los tipos MIME, veamos un ejemplo de tipo MIME común como el siguiente:
text/html
En referencia al MIME anterior Escriba ejemplo, podemos notar que tiene dos partes (tipo y subtipo ) que es una clave Tipo MIME atributo. En este caso, el texto es el tipo y html el subtipo .
Otros tipos MIME comunes los ejemplos incluyen lo siguiente:
application/pdf application/zip application/xml text/xml text/csv text/plain multipart/form-data
Tenga en cuenta que tanto el tipo y subtipo elementos de un tipo MIME son sensibles a mayúsculas y minúsculas. Tiene razón al suponer que el subtipo parte de un tipo MIME son en su mayoría formatos multimedia como pdf, xml, zip y csv. Sin embargo, el subtipo de tipo MIME también puede contener un sufijo o prefijo de árbol según el siguiente formato de tipo MIME estándar:
type "/" [tree "."] subtype ["+" suffix]
Un ejemplo perfecto de tipo MIME en referencia al formato de tipo MIME completo anterior es el siguiente:
application/vnd.api+json
El ejemplo anterior es la API JSON formato de un tipo MIME específico de API donde el tipo es una aplicación, el subtipo es API, el prefijo del proveedor es vnd. y el sufijo es +json.
Determinación del tipo MIME de un archivo en Linux
Mientras que Tipos MIME han estandarizado la denominación de los tipos de archivos y sus formatos asociados, esta funcionalidad no está almacenada ni automatizada en el sistema de archivos de Linux.
Para determinar correctamente el tipo MIME de un archivo de destino en Linux, debemos reconocer la extensión del archivo. y contenido .
- Tipos MIME por extensión de archivo – Si falta la extensión del archivo o es incorrecta, como en el caso de que se cambie el nombre de un archivo zip para que tenga una extensión de archivo de imagen JPG, no tendrá sentido determinar su tipo MIME por extensión de archivo.
- Tipos MIME por contenido de archivo – Las características específicas del contenido del archivo como el FF D9 y FF D8 Las firmas hexadecimales en los archivos de imagen JPG ayudan a determinar el tipo MIME asociado. Sin embargo, los esfuerzos adicionales de E/S utilizados en este enfoque lo hacen más lento pero confiable.
Encuentre tipos de archivo MIME usando el comando xdg-mime
Desde las xdg-utils el paquete aloja el xdg-mime comando, debería estar disponible en casi todas las distribuciones del sistema operativo Linux. Determina el tipo MIME solo por extensión de archivo.
Su sintaxis de referencia es la siguiente:
$ xdg-mime query filetype TARGETED_INPUT_FILE
Intentemos determinar los tipos MIME de los siguientes archivos:
$ xdg-mime query filetype mypic.jpeg $ xdg-mime query filetype sample_file.txt

También podemos eliminar la extensión del archivo de imagen y obtener su tipo MIME a través de este comando:
$ mv mypic.jpeg mypic $ xdg-mime query filetype mypic

Imprimir tipos de archivo MIME usando el comando de archivo
El comando de archivo es una instalación predeterminada en casi todas las distribuciones del sistema operativo Linux. Determina el tipo MIME de un archivo tanto por extensión de archivo como por contenido de archivo.
Su sintaxis de referencia/uso es la siguiente:
$ file --mime-type TARGETED_INPUT_FILE
Podemos implementarlo en los dos tipos de archivos mostrados de la siguiente manera:
$ file --mime-type mypic.jpeg $ file --mime-type sample_file.txt

Quitemos también el JPEG extensión de archivo de imagen y controle la salida de este comando:
$ mv mypic.jpeg mypic $ file --mime-type mypic

xdg-mime vs file Precisión de rendimiento de los comandos
Si cambiamos la extensión de archivo de un archivo de texto aleatorio a un formato de archivo zip y verificamos el Tipo MIME de este archivo usando ambos xdg-mime y archivo comandos, el archivo El comando podrá determinar correctamente el tipo MIME en función del contenido del archivo.
$ mv output.txt output.zip $ file --mime-type output.zip $ xdg-mime query filetype output.zip

Ahora podemos determinar el Tipo MIME de un archivo según la extensión del archivo, el contenido del archivo o ambos en Linux.