El comando de estadística de Linux revela muchos más detalles que LS. Eche un vistazo detrás de escena con esta utilidad informativa y personalizable. Te mostraremos cómo usarlo.
- Stat te lleva detrás de escena
- Comparación rápida
- Cómo acceder al sistema de archivos ExFat en Ubuntu Linux
- La marca de tiempo modificada solo se actualizará si se cambia el contenido del archivo. La marca de tiempo modificada se actualiza tanto para cambios de contenido como de atributos.
- estadística ana.?
- Total: el número total de manijas de índice en el sistema de archivos. GRATIS: El número de descriptores de índice gratuitos en el sistema de archivos.
- Ahora se muestra la información sobre el archivo que apunta por el enlace simbólico. Pero tenga en cuenta que el nombre del archivo todavía se enumera como Code. C. Este es el nombre del enlace, no el archivo de destino. Esto se debe a que este es el nombre que pasamos a STAT en la línea de comando.
- No hay indicaciones. Para comprender esto, hasta que memorice la secuencia de campos, debe vincular esta salida a la salida completa de STAT.
- Los formatos personalizados le dan acceso a aún más elementos de datos que los incluidos en la salida de estadísticas estándar.
Stat te lleva detrás de escena
El comando LS es excelente en lo que hace, y hace mucho, pero con Linux parece que siempre hay una manera de profundizar y ver qué está al acecho debajo de la superficie. Y a menudo no es solo el borde elevado de la alfombra. Puedes rasgar las tablas del piso y cavar un agujero. Puedes pelar a Linux como una cebolla.
LS le mostrará mucha información sobre un archivo, como qué permisos se establecen para ello, qué tan grande es y si se trata de un archivo o un enlace simbólico. Para mostrar esta información, LS la lee desde una estructura del sistema de archivos llamado descriptor de índice.
Cada archivo y directorio tiene un descriptor de índice. El inodo contiene metadatos sobre el archivo, como qué sistema de archivo bloquea que ocupa, y las sellos de fecha asociados con el archivo. Un inodo es como una tarjeta de biblioteca para un archivo. Pero LS solo le mostrará algo de la información. Para ver todo, necesitamos usar el comando STAT.
Al igual que LS, el comando STAT tiene muchos parámetros. Esto lo convierte en un excelente candidato para alias. Una vez que descubra un conjunto particular de parámetros que hacen que STAT le brinde el resultado que desea, adjuntarlo en una función de alias o shell. Esto hace que sea mucho más fácil de usar, y no tiene que memorizar un conjunto críptico de parámetros de línea de comandos.
Comparación rápida
Usemos LS para obtener una lista larga (la opció n-l) con tamaños de archivo legibles (la opció n-h):
l s-lh ana. h
De izquierda a derecha, LS proporciona la siguiente información:
El primer personaje es un guión «-«, que nos dice que el archivo es un archivo normal, no un socket, un enlace simbólico u otro tipo de objeto. El propietario, el grupo y otros permisos se enumeran en formato Octal. El número de enlaces duros que apuntan a este archivo. En este caso, como en la mayoría de los casos, será uno. El propietario del archivo es Dave. El propietario del grupo es Dave. El tamaño del archivo es de 802 bytes. El archivo se modificó por última vez el viernes 13 de diciembre de 2015. El nombre de archivo del archivo es ANA. C.
Echemos un vistazo a Stat:
Estadística ana. h.
La información que obtenemos de STAT:
Archivo: el nombre del archivo. Esto suele ser lo mismo que el nombre que pasamos a STAT en la línea de comando, pero puede ser diferente si estamos viendo un enlace simbólico. Tamaño: el tamaño del archivo en bytes. Bloques: el número de bloques del sistema de archivos que el archivo requiere para almacenarse en el disco duro. Bloque de E/S: el tamaño del bloque del sistema de archivos. Tipo de archivo: el tipo de objeto descrito por los metadatos. Los tipos más comunes son archivos y directorios, pero también pueden ser enlaces, sockets o canales con nombre. Dispositivo: el número de dispositivo en hexadecimal y decimal. Este es el identificador del disco duro en el que se almacena el archivo. Inodo: el número de inodo. Es decir, el número de identificación de ese inodo. Juntos, el número de inodo y el número de dispositivo identifican de manera única el archivo. Enlaces: este número indica cuántos enlaces duros apuntan a este archivo. Cada enlace duro tiene su propio descriptor de índice. Otra forma de pensar en este número es cuántos inodos apuntan a este archivo. Cada vez que se crea o elimina un enlace duro, este número aumentará o disminuirá. Cuando alcanza el cero, el archivo en sí se elimina y se elimina el descriptor de índice. Si usa STAT para un directorio, este número representa el número de archivos en el directorio, incluido el «». Entrada para el directorio actual y la entrada «…» para el directorio principal. Acceso: los permisos de archivo se muestran en formato OCTAL y tradicional RWX (leer, escribir, ejecutar, ejecutar). UID: ID de usuario y nombre del usuario
Pero esto no está implementado en Linux.
Cómo acceder al sistema de archivos ExFat en Ubuntu Linux
Comprender las marcas de tiempo
Las marcas de tiempo son sensibles a la zona horaria. E l-0500 al final de cada línea indica que este archivo se creó en una computadora en la zona horaria de la hora universal coordinada (UTC), que está cinco horas por delante de la zona horaria de la computadora actual. Entonces, esta computadora está cinco horas por detrás de la computadora que creó este archivo. De hecho, el archivo se creó en una computadora en la zona horaria del Reino Unido y lo estamos viendo aquí en una computadora en la zona horaria estándar del este de EE. UU.
Las marcas de tiempo de modificación y cambio pueden causar confusión porque para los no iniciados, sus nombres suenan como si significaran lo mismo.
Usemos chmod para cambiar los permisos en un archivo llamado ana. c. Vamos a hacer que sea escribible para todos. Esto no afectará el contenido del archivo, pero afectará los atributos del archivo.
chmod +w ana. c
Y luego vamos a usar stat para ver las marcas de tiempo:
estadística ana. c
La marca de tiempo modificada se ha actualizado, pero la marca de tiempo modificada no.
La marca de tiempo modificada solo se actualizará si se cambia el contenido del archivo. La marca de tiempo modificada se actualiza tanto para cambios de contenido como de atributos.
Usando Stat con Múltiples Archivos
Para obtener un informe estadístico sobre varios archivos a la vez, pase los nombres de los archivos a stat en la línea de comando:
stat ana. h ana. o
Para usar stat para un conjunto de archivos, use la coincidencia de patrones. El signo de interrogación "?"representa cualquier carácter individual y el asterisco "*" representa cualquier cadena de caracteres. Podemos decirle a stat que reporte cualquier archivo llamado "ana" con una extensión de una sola letra con este comando:
estadística ana.?
Uso de stat para informar sobre sistemas de archivos
Stat puede informar el estado de los sistemas de archivos, así como el estado de los archivos. El parámetr o-f (sistema de archivos) le dice a stat que informe el sistema de archivos en el que reside el archivo. Tenga en cuenta que también podemos pasar un directorio, como "/", a stat en lugar de un nombre de archivo.
sta t-f ana. c
La estadística nos da la siguiente información:
Cómo configurar una copia de seguridad instantánea en Linux Mint
Archivo: el nombre del archivo. ID: ID del sistema de archivo en notación hexadecimal. Namelen: longitud máxima permitida de los nombres de archivo. Tipo: el tipo de sistema de archivos. Tamaño del bloque: la cantidad de datos para las solicitudes de lectura para la tasa de transferencia de datos óptima. Tamaño básico del bloque: el tamaño de cada bloque del sistema de archivos.
Total: el número total de todos los bloques en el sistema de archivos. GRATIS: El número de bloques gratuitos en el sistema de archivos. Disponible: el número de bloques gratuitos disponibles para usuarios normales (no raíz).
Total: el número total de manijas de índice en el sistema de archivos. GRATIS: El número de descriptores de índice gratuitos en el sistema de archivos.
Enlace simbólico Desreferencing
Si usa STAT para un archivo que en realidad es un enlace simbólico, informará el enlace. Si desea que STAT informe el archivo apuntado por el enlace, use el parámetr o-l (desreferencia). El archivo código. c es un enlace simbólico a Ana. c. Veamoslo sin la opció n-l:
В имени файла отображается code.c, указывающий на (->stat Code. c
) Ana. c. El tamaño del archivo es de solo 11 bytes. No hay bloques para almacenar esta referencia. El tipo de archivo se especifica como un enlace simbólico.
Claramente, no estamos considerando el archivo en sí aquí. Vamos a hacerlo de nuevo y agregue el parámetr o-l:
sta t-l code. c
Ahora se muestra la información sobre el archivo que apunta por el enlace simbólico. Pero tenga en cuenta que el nombre del archivo todavía se enumera como Code. C. Este es el nombre del enlace, no el archivo de destino. Esto se debe a que este es el nombre que pasamos a STAT en la línea de comando.
Resumen
El parámetr o-t (breve) hace que STAT proporcione un resumen condensado:
sta t-t ana. c
No hay indicaciones. Para comprender esto, hasta que memorice la secuencia de campos, debe vincular esta salida a la salida completa de STAT.
Formatos de salida personalizados
La mejor manera de obtener un conjunto diferente de datos de STAT es usar un formato personalizado. Hay una larga lista de tokens llamados secuencias de formato. Cada uno de ellos representa un elemento de datos. Elija los que desea incluir en la salida y cree una cadena de formato. Cuando llamamos a STAT y lo pasamos una cadena de formato, la salida solo incluirá los elementos de datos que solicitamos.
Hay diferentes conjuntos de secuencias de formato para archivos y sistemas de archivos. Lista de archivos:
% A: Derechos de acceso en formato octal.% A: Derechos de acceso en forma legible (RWX).% B: número de bloques asignados.% B: tamaño de cada bloque en bytes.% D: número de dispositivo en formato decimal.% D: número de dispositivo hexadecimal.% F: modo fuente en formato hexadecimal.% F Tipo de archivo.% G: ID de grupo de propietario.% G: Nombre del grupo del propietario.% H: número de enlaces duros.% I: número de inodo.% M: punto de montaje.% n: nombre del archivo.% N: nombre de archivo cotizaciones con nombre de archivo derferenciado si es un enlace simbólico.% O: Sugerencia para el tamaño óptimo de transferencia de E/S.% S: tamaño total en bytes.% T: Tipo de dispositivo primario en formato hexadecimal para archivos especiales de dispositivos de carácter/bloque.% T: Tipo de dispositivo opcional en formato hexadecimal para archivos especiales de dispositivos de carácter / bloque.% U: ID de usuario del propietario.% U: Nombre de usuario del propietario.% W: tiempo de creación de archivos, legible o guión «-» Si se desconoce.% W: tiempo de creación de archivos en segundos desde el comienzo de la época; 0 si se desconoce.% X: último tiempo de acceso en formato legible.% X: último tiempo de acceso en segundos desde el comienzo de la época.% Y: tiempo de la última modificación de datos, legible por humanos.% Y: tiempo de la última modificación de datos en segundos desde el comienzo de la época.% Z: tiempo del último cambio de estado, legible por humanos.% Z: tiempo del último cambio de estado en segundos desde el comienzo de la época.
Cómo alojar un servidor TeamSpeak en Linux
«Epoch» es una época de Unix que ocurrió el 01/01/1970 a las 00:00:00 +0000 (UTC).
Para los sistemas de archivos, la secuencia de formato es:
% A: Número de bloques gratuitos disponibles para usuarios normales (no raíz).% B: número total de bloques de datos en el sistema de archivos.% C: número total de descriptores de índice en el sistema de archivos.% D: Número de descriptores de índice gratuitos en el sistema de archivos.% F: Número de bloques gratuitos en el sistema de archivos.% I: identificador del sistema de archivos en formato hexadecimal.% L: Longitud máxima de los nombres de archivo.% n: nombre del archivo.% s: tamaño de bloque (tamaño de registro óptimo).% S: tamaño del bloque del sistema de archivo (para el número de bloques).% T: tipo de sistema de archivos hexadecimales.% T: tipo de sistema de archivo en forma legible.
Hay dos opciones que aceptan cadenas de secuencia de formato. Estos so n-format y-printf. La diferencia entre los dos es las secuencias de escape de estilo C de estilo C printf, como Newline N y Tab T, y no agrega automáticamente un carácter de Newline a su salida.
Creemos una cadena de formato y la pasemos a STAT. Las secuencias de formato que íbamos a usar:% N para nombre de archivo,% s para el tamaño del archivo y% F para el tipo de archivo. Vamos a agregar la secuencia N de escape al final de la cadena para garantizar que cada archivo se procese desde una nueva línea. Nuestra cadena de formato se ve así:
«El archivo %n es %s bytes, y es un %fn».
Vamos a pasar esto a STAT usando la opció n-Printf. Vamos a pedir a STAT que informe un archivo llamado Code. c y un conjunto de archivos correspondientes a ANA. Este es un comando completo. Tenga en cuenta el signo igual "=" entr e-printf y la cadena de formato:
stat –printf = «archivo %n es %s bytes, y es un %fn» code. c ana/ana.
El informe para cada archivo se muestra en una nueva línea, que es lo que pedimos. Se nos proporciona el nombre del archivo, el tamaño del archivo y el tipo de archivo.
Los formatos personalizados le dan acceso a aún más elementos de datos que los incluidos en la salida de estadísticas estándar.
Control de grano fino