4 votos

Interacción entre 'mdls' y 'mdimport': cuestión de buenas prácticas

¿Estoy en lo cierto al suponer que, para garantizar una consulta en el terminal como

mdls -name kMDItemContentCreationDate /var/log/system.log

siempre devuelve la fecha de creación real de dicho archivo (siempre que exista), debería forzar siempre a Spotlight a importar esta información en primer lugar:

mdimport -r /var/log/system.log

?

Me interesa estrictamente obtener, de la Terminal, ese dato concreto.

Esta parece ser la conclusión basada en otro Puesto SOV, especialmente porque la indexación de Spotlight puede ignorar algunas carpetas.

2voto

Michael Zhou Puntos 167

Yo usaría stat en lugar de mdls en un sistema que ejecuta el kernel de 64 bits.

stat -f "%B" file

devolverá la fecha de creación o la hora de nacimiento en segundos desde epoch (tiempo Unix/Epoch). Se puede producir una salida legible para humanos con

stat -f "%SB" file

También puede formatear la salida de este comando añadiendo la opción -t (véase man 3 strftime).

En un sistema que ejecuta el kernel de 32 bits, es necesario utilizar GetFileInfo .

GetFileInfo -d file

La salida de GetFileInfo se puede convertir en tiempo de época pasando la salida por el programa date comando.

cdate=$(GetFileInfo -d file)
date -j -f "%m/%d/%Y %H:%M:%S" "$cdate" +%s

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X