Comando Stat en Linux con ejemplos

El stat es un comando que brinda información sobre el archivo y el sistema de archivos. El comando Stat brinda información como el tamaño del archivo, los permisos de acceso y la ID de usuario y la ID de grupo, la hora de nacimiento y la hora de acceso del archivo. El comando Stat tiene otra característica, mediante la cual también puede proporcionar información del sistema de archivos. Esta es la mejor herramienta para usar cuando queremos la información de cualquier archivo.

Ahora veamos uno por uno cómo podemos usar el comando stat.

Usando el comando stat

La sintaxis básica del uso del comando stat es la siguiente:

stat --options filenames

Stat puede aceptar uno o más nombres de archivo como entrada para el comando stat. Ahora veamos un ejemplo

stat /etc/resolv.conf

Producción:

La información que obtenemos de stat 

La siguiente es la información que obtenemos sobre el archivo cuando ejecutamos el comando stat.

  • Archivo: El nombre del archivo proporcionado. Si el archivo proporcionado es un enlace simbólico, el nombre será diferente.
  • Tamaño: El tamaño de un archivo dado en Bytes.
  • Bloques: Número total de bloques asignados al archivo para almacenar en el disco duro.
  • Bloque IO: el tamaño de cada bloque asignado en bytes.
  • Tipo de archivo: El archivo puede ser de los siguientes tipos: Archivos regulares, archivos especiales, directorios o enlaces simbólicos.
  • Dispositivo: número de dispositivo en formato hexadecimal.
  • Inode: Número de iNode del archivo.
  • Enlaces: Número de enlaces duros del archivo.
  • Acceso: Permisos de acceso en los métodos numéricos y simbólicos.
  • Contexto: El campo almacena el contexto de seguridad de SELinux.
  • Acceso: La última vez que se accedió al archivo.
  • Modificar: la última vez que se modificó el archivo.
  • Cambio: la última vez que se cambió el atributo o el contenido del archivo.
  • Nacimiento: La hora en que se creó el archivo.

Ahora veamos cómo podemos mostrar información sobre el sistema de archivos.

Visualización de la información del sistema de archivos

El comando stat puede proporcionar la información del sistema de archivos cuando proporcionamos el nombre del archivo con las opciones -f (–file-system). Sintaxis de usar la opción -f con el comando stat:

stat -f filename

Aquí hay un ejemplo de la opción -f:

También podemos proporcionar el directorio o el sistema de archivos como entrada al comando stat de la siguiente manera:

stat -f /

La información que obtenemos para el sistema de archivos de la estadística 

  • Archivo: El nombre del archivo proporcionado.
  • ID: ID del sistema de archivos en formato hexadecimal.
  • Namelen: La longitud máxima (número de caracteres) de un nombre de archivo.
  • Tamaño de bloque fundamental: tamaño total de cada bloque en el sistema de archivos.
  • Bloques:
    • Total: número total de bloques en el sistema de archivos
    • Libre: número total de bloques libres en el sistema de archivos
    • Disponible: número total de bloques gratuitos disponibles para usuarios no root
  • INodes:
    • Total: número total de iNodes en el sistema de archivos.
    • Libre: número total de iNodes libres en el sistema de archivos.

Uso de Stat con varios archivos

Para obtener información sobre varios archivos usando el comando stat, solo mencione los nombres de los archivos separados por espacios:

stat locale.conf  login.defs

Esto mostrará la información sobre los archivos mencionados.

Enlaces simbólicos de desreferencia

Si proporcionamos el archivo de enlace simbólico al comando stat, dará la información sobre el enlace simbólico en lugar del archivo original. Aquí hay un ejemplo:

Ahora veamos cómo podemos desreferenciar los enlaces simbólicos. Para seguir o desreferenciar la información simbólica y mostrar sobre el archivo del cual la estadística de punto similar al simbólico proporciona la opción -L (–desreferencia). Podemos usar esta opción para desreferenciar los enlaces simbólicos. Aquí ejemplo:

stat -L /etc/localtime

La salida será así:

Podemos ver que stat muestra información sobre la carpeta /bin.

Personalización de la salida 

 stat nos brinda la opción de personalizar la salida en lugar de usar el formato de salida predeterminado. Hay dos formas en que podemos personalizar la salida.

La primera es usar la opción -c o la opción -format con el formato de la salida. Si proporcionamos los múltiples archivos al comando stat con la opción –formato, automáticamente agregará la nueva línea después de la salida de cada operando:

stat --format='%n' /etc/passwd

Otra forma de imprimir una salida personalizada es usar la opción –print con el formato. Con esta opción, podemos proporcionar caracteres finales al formato, por ejemplo, si queremos agregar una nueva línea después de cada salida de línea, podemos usar \n caracteres finales con una barra invertida. Aquí hay uno de usar la opción de impresión

stat --print='%n\n' /etc/passwd

Para conocer todas las secuencias de formato, lea la página man de la estadística usando el comando man. La estadística también puede mostrar la información en forma concisa. Podemos mostrar información en forma concisa con la opción -terse:

stat -t /etc/passwd

Comprender las marcas de tiempo

Las marcas de tiempo muestran la información sobre la zona horaria. Generalmente, las marcas de tiempo muestran la hora en que se creó el archivo desde la zona horaria UTC. si el valor es positivo, el archivo se creó antes de la zona horaria UTC y si el valor es negativo, el archivo se creó antes de la zona horaria UTC. Por ejemplo:

En el ejemplo anterior, el valor de la marca de tiempo es +0530, lo que significa que el archivo se crea 5 horas y 30 minutos antes de la hora UTC. Aquí hay una nota para el comando stat, su shell puede tener su propia versión de stat. Para conocer su estadística de shell, lea la página de manual usando el comando man:

man stat

Publicación traducida automáticamente

Artículo escrito por nishant0073 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *