Comando file en Linux: identifica el tipo de archivo por número mágico
El comando file en Linux se utiliza para determinar cuál es el tipo de archivo informado como parámetro en base al Magic Number (los dos primeros bytes).
A diferencia de Windows, las extensiones de archivo no significan nada en Linux. El comando file realiza tres tipos de verificación para determinar cuál es el tipo del archivo:
- Prueba de sistema de archivos;
- Prueba de Magic Number;
- Prueba de lenguaje
La primera prueba de sistema de archivos se realiza para determinar si el archivo es un archivo común, un directorio, un enlace, un dispositivo, un socket de conexión, etc. En Linux absolutamente todo es un archivo. El tipo de archivo en el sistema de archivos determina si es un archivo común u otro tipo especial.
La segunda prueba de Magic Number verifica los dos primeros bytes del archivo para determinar su tipo. Existe una convención en la computación que determina que los dos primeros bytes del archivo deben contener un código que indica su tipo. Por ejemplo, los scripts comienzan con el código "#!", seguido de la ruta completa del intérprete que interpretará y ejecutará el script.
La tercera prueba, una vez determinado que el archivo es un programa, script o código fuente, indica cuál es el lenguaje del programa.
Ejemplos:
$ file teste1.cteste1.c: C source, UTF-8 Unicode text
$ file teste1teste1: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=f63857e5ce1a259a5228b1ea15ced24867583793, not stripped
$ file backup.sh backup.sh: Bourne-Again shell script, ASCII text executable
$ file supermercado.xz supermercado.xz: XZ compressed data
$ file MAPA_MENTAL_LPI.pdfMAPA_MENTAL_LPI.pdf: PDF document, version 1.6
Aprende mucho más sobre Linux en nuestro curso en línea. Puedes realizar la inscripción aquí. Si ya tienes una cuenta, o quieres crear una, simplemente ingresa o crea tu usuario aquí.
¿Te gustó? Comparte
Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.