En Linux, todo se considera como un archivo. En UNIX, siete tipos de archivo estándar son normal, directorio, enlace simbólico, FIFO especial, bloque especial, carácter especial y socket. En Linux/UNIX, tenemos que lidiar con diferentes tipos de archivos para administrarlos de manera eficiente.
En Linux/UNIX, los archivos se clasifican principalmente en 3 partes:
- Archivos regulares
- Archivos de directorio
- Archivos especiales
La forma más fácil de averiguar el tipo de archivo en cualquier sistema operativo es mirar su extensión, como .txt, .sh, .py, etc. Si el archivo no tiene una extensión, entonces en Linux podemos usar la utilidad de archivos . En este artículo, demostraremos ejemplos de comandos de archivo para determinar un tipo de archivo en Linux.
Para averiguar los tipos de archivos, podemos usar el comando de archivo.
Sintaxis: archivo [OPCIÓN…] [ARCHIVO…]
Puede ejecutar el siguiente comando para verificar la versión de la utilidad de archivo:
file -v
Podemos probar un tipo de archivo escribiendo el siguiente comando:
file file.txt
Podemos pasar una lista de archivos en un archivo y podemos especificar usando la opción -f como se muestra a continuación:
cat file.txt file -f file.txt
Usando la opción -s podemos leer el archivo especial de bloque o carácter.
file -s /dev/sda
El uso de la opción -b no antepondrá los nombres de archivo a las líneas de salida
file -f GFG.txt
El uso de la opción -F utilizará una string como separador en lugar de «:».
file -F '#' GFG.txt
El uso de la opción -L seguirá a los enlaces simbólicos (predeterminado si se establece POSIXLY_CORRECT):
file -L stdin
Podemos usar la opción –extension para imprimir una lista separada por barras de extensiones válidas para el tipo de archivo encontrado.
file --extension GFG.rar
Para obtener más información y opciones de uso, puede utilizar el siguiente comando:
man file
También podemos usar el comando ls para determinar un tipo de archivo.
Sintaxis:
ls [OPTION]... [FILE]...
La siguiente tabla muestra los tipos de archivos en Linux y lo que se generará usando ls y el comando de archivo
Tipo de archivo | Comando para crear el Archivo | Situado en | El tipo de archivo que usa «ls -l» se denota usando | Salida del comando ARCHIVO |
---|---|---|---|---|
archivo regular | tocar | Cualquier directorio/carpeta | – | Datos de imagen PNG, texto ASCII, datos de archivo RAR, etc. |
Archivo de directorio | mkdir | es un directorio | d | Directorio |
Bloquear archivos | fdisco | /desarrollo | b | bloque especial |
Archivos de caracteres | mknod | /desarrollo | C | personaje especial |
Archivos de tubería | mkfifo | /desarrollo | pags | FIFO |
Archivos de enlace de símbolo | en | /desarrollo | yo | Enlace de símbolo a <nombre del enlace> |
Archivos de enchufe | llamada al sistema socket() | /desarrollo | s | Enchufe |
Tipos de archivo y explicación
Archivos regulares
Los archivos regulares son archivos ordinarios en un sistema que contiene programas, textos o datos. Se utiliza para almacenar información como texto o imágenes. Estos archivos se encuentran en un directorio/carpeta. Los archivos normales contienen todos los archivos legibles, como archivos de texto, archivos Docx, archivos de programación, etc., archivos binarios, archivos de imagen como JPG, PNG, SVG, etc., archivos comprimidos como ZIP, RAR, etc.
Ejemplo:
O podemos usar el comando » archivo *» para averiguar el tipo de archivo
Archivos de directorio
El único trabajo de los archivos de directorio es almacenar los otros archivos regulares, archivos de directorio y archivos especiales y su información relacionada. Este tipo de archivo se indicará en color azul con enlaces mayores o iguales a 2. Un archivo de directorio contiene una entrada para cada archivo y subdirectorio que alberga. Si tenemos 10 archivos en un directorio, tendremos 10 entradas en el archivo del directorio. Podemos navegar entre directorios usando el comando cd
Podemos encontrar el archivo de directorio usando el siguiente comando:
ls -l | grep ^d
También podemos usar el comando archivo *
Archivos especiales
1. Bloquear archivos:
Los archivos de bloque actúan como una interfaz directa para bloquear dispositivos, por lo que también se denominan dispositivos de bloque. Un dispositivo de bloque es cualquier dispositivo que realiza operaciones de entrada y salida de datos en unidades de bloques. Estos archivos son archivos de hardware y la mayoría de ellos están presentes en /dev.
Podemos encontrar el archivo de bloque usando el siguiente comando:
ls -l | grep ^b
También podemos usar el comando de archivo :
2. Archivos de dispositivos de caracteres:
Un archivo de caracteres es un archivo de hardware que lee/escribe datos carácter por carácter en un archivo. Estos archivos proporcionan un flujo en serie de entrada o salida y brindan acceso directo a los dispositivos de hardware. El terminal, puertos serie, etc son ejemplos de este tipo de archivo.
Podemos encontrar archivos de dispositivos de caracteres por:
ls -l | grep ^c
Podemos usar el comando de archivo para averiguar el tipo de archivo:
3. Archivos de tuberías:
El otro nombre de tubería es una tubería «nombrada», que a veces se denomina FIFO. FIFO significa «primero en entrar, primero en salir» y se refiere a la propiedad de que el orden de los bytes que entran es el mismo que sale. El «nombre» de una canalización con nombre es en realidad un nombre de archivo dentro del sistema de archivos. Este archivo envía datos de un proceso a otro para que el proceso de recepción lea los datos de manera que el primero en entrar sea el primero en salir.
Podemos encontrar el archivo de tubería usando el siguiente comando:
ls -l | grep ^p
Podemos usar el comando de archivo para averiguar el tipo de archivo:
4. Archivos de enlace de símbolos:
Un archivo de enlace de símbolo es un tipo de archivo en Linux que apunta a otro archivo o carpeta en su dispositivo. Los archivos de enlace de símbolo también se denominan enlace simbólico y son similares a los accesos directos de Windows.
Podemos encontrar el archivo de enlace de símbolo usando el siguiente comando:
ls -l | grep ^l
Podemos usar el comando de archivo para averiguar el tipo de archivo:
5. Archivos de enchufe:
Un socket es un archivo especial que se utiliza para pasar información entre aplicaciones y permite la comunicación entre dos procesos. Podemos crear un archivo de socket usando la llamada al sistema socket(). Un archivo de socket se encuentra en /dev de la carpeta raíz o puede usar el comando find / -type s para buscar archivos de socket.
find / -type s
Podemos encontrar el archivo de enlace de símbolo usando el siguiente comando:
ls -l | grep ^s
Podemos usar el comando de archivo para averiguar el tipo de archivo:
Publicación traducida automáticamente
Artículo escrito por shantanujain18 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA