Re: [OT] ¿Como obtener la fecha de un fichero?
El 23/03/2006, a las 21:16, Claude Micouin escribió:
en una carpeta, tengo estos dos ficheros.
$ls -l
total 2356
-rwxr-xr-t 1 pepe pepe 732691 2006-03-23 20:55 fichero1
-rwxr-xr-t 1 pepe pepe 1668019 2006-03-23 21:00 fichero2
¿Hay una manera de obtener estas fechas?
¿Qué fecha quieres obtener? En UNIX existen 3 fechas: atime, ctime,
mtime:
* atime == fecha del último acceso al fichero
* mtime == fecha de la última modificación del fichero
* ctime == fecha de cambios en el fichero a nivel de inodo, por
ejemplo: permisos, propietarios, etc..
Se me ocurre que la forma mas cómoda de obtener cualquiera de estos
tres valores es el con el comando "stat", te saca si quieres la
salida ya formateada o tambien en formato epoch para posterior
tratamiento con el comando "date", por ejemplo, para formatearla a tu
gusto :-)
$ stat -c %x find.txt
2006-03-23 23:42:48.160308760 +0100
$ stat -c %X find.txt
1143153768
Como ya te han indicado tambien puedes tirar de "awk", un ejemplo
para mostrar fecha y hora:
$ ls -l find.txt | awk ' { print $6 " " $7} '
2006-02-20 00:56
En este caso muy recomendable pasar el parametro "--full-time" a "ls"
para que te muestre la fecha en formato largo, en algunas
compilaciones de las "coreutils" la fecha aparece acortada..
$ ls -l --full-time find.txt | awk ' { print $6 " " $7} '
2006-02-20 00:56:49.000000000
Saludos,
--
Santi Saez
Reply to: