La mayoría de las personas usan el comando ls con la opción -l para verificar el permiso en un archivo en Linux.
¿Qué pasaría si te dijera que hay una mejor manera de verificar los atributos de los archivos? Es un comando simple pero útil llamado stat.
comando stat en Linux
El comando stat enumera atributos importantes de archivos y directorios. También puede mostrar información sobre el sistema de archivos, en lugar de los archivos.
Tiene una sintaxis simple:
stat [options] files
Solo hay unas pocas opciones con el comando stat:
- -f :muestra la información del sistema de archivos en lugar del archivo
- -L :sigue enlaces simbólicos y muestra información sobre el archivo al que apuntan
- -t:el modo breve imprime la información en una sola línea
Uso del comando stat para obtener información del archivo
Aquí hay una salida de muestra si usa el comando stat sin ninguna opción:
stat sample.txt
File: sample.txt
Size: 426 Blocks: 8 IO Block: 4096 regular file
Device: 10302h/66306d Inode: 8259907 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1000/abhishek) Gid: ( 1000/abhishek)
Access: 2020-01-06 09:48:02.908946552 +0530
Modify: 2020-01-05 10:16:33.225203223 +0530
Change: 2020-01-06 19:51:28.737207649 +0530
Birth: -
Déjame explicarte el resultado:
- Archivo :Nombre del archivo.
- Tamaño :Tamaño de los archivos en bytes.
- Bloques :número de bloques del sistema de archivos que el archivo necesita en el disco.
- Bloque IO :Tamaño de un bloque del sistema de archivos. Suele ser de 4 KB.
- Tipo de archivo :Podría ser archivo, directorio, enlace, sockets.
- Dispositivo :El número de dispositivo (ID del disco duro) en hexadecimal y decimal.
- Inodo :El número de inodo. Obtenga más información sobre los inodos en Linux.
- Enlaces :Número de enlaces duros al archivo.
- Acceso :Permisos de archivo en modo absoluto y modo simbólico.
- ID :ID de usuario y nombre de usuario del propietario del archivo
- Gid :ID de grupo y nombre de grupo del propietario del archivo.
- Acceso :Este acceso se trata de la marca de tiempo de acceso (última vez que se accedió al archivo), también llamado atime.
- Modificar :La marca de tiempo de modificación (última vez que se modificó el archivo), también llamada mtime.
- Cambiar :La marca de tiempo del cambio (última vez que se llamó al archivo), también llamada ctime. Lea este artículo para obtener más información sobre atime, mtime y ctime.
- Nacimiento :Fecha de creación original del archivo. Esto no se usa en Linux.
Si usa el modo conciso con la opción -t, verá prácticamente la misma información (algunas órdenes pueden ser diferentes) en una sola línea pero sin ninguna descripción de qué campo es qué.
[email protected]:$ stat -t sample.txt
sample.txt 426 8 81b4 1000 1000 10302 8259907 1 0 0 1578284282 1578199593 1578320488 0 4096
Obtener información del sistema de archivos con el comando stat
Puede usar la opción -f para mostrar información del sistema de archivos en lugar del archivo en sí.
[email protected]:$ stat -f sample.txt
File: "sample.txt"
ID: 65205b688c8b079c Namelen: 255 Type: ext2/ext3
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 61142095 Free: 41522899 Available: 38399635
Inodes: Total: 15597568 Free: 15279217
Como puede ver en el resultado, le brinda la siguiente información:
- Archivo:Nombre del archivo.
- ID:ID del sistema de archivos en hexadecimal.
- Namelen:longitud máxima para nombres de archivos.
- Tipo:tipo de sistema de archivos.
- Tamaño del bloque:la cantidad de datos para solicitar solicitudes de lectura para tasas de transferencia de datos óptimas.
- Tamaño de bloque fundamental:tamaño de un bloque en el sistema de archivos
- Total de bloques, bloques libres y bloques disponibles (para usuarios no root)
- Número de inodos totales e inodos libres
Utilice el comando stat con varios archivos
Puede ejecutar el comando stat con varios archivos.
Puede proporcionar sus nombres individualmente así:
stat file1.txt file2.txt
También puede proporcionar un patrón de nombre de archivo:
stat *.txt
Espero que les haya gustado este pequeño y útil comando. Estén atentos para obtener más información sobre los comandos de Linux.