Me gustaría poder proporcionar marcas de tiempo de la última modificación a mis publicaciones y páginas de Jekyll mediante un script de shell. El problema es que no sé cómo generar automáticamente una marca de tiempo aceptable. Lo más cerca que he estado de una marca de tiempo aceptable es usar este comando:
stat <FILE> | sed -n -e 's/Modify:\s//p'
que devuelve para mi archivo glosario.md:
2016-02-12 09:37:55.393936224 +1000
este es casi el formato que quiero. El único problema es que me gustaría quitarle el decimal .393936224
. Pensé que podría manejar esto yo mismo, sed
pero todos mis intentos fallaron. La mayoría de mis intentos implicaron escribir este resultado en un archivo de texto y luego usar sed en este archivo de texto para eliminar el decimal. Preferiría que cualquier respuesta que dé no escriba el resultado de esto en un archivo de texto, aunque me gustaría que el resultado de su solución se pueda escribir en una variable. por ejemplo, si la variable es L
:
L=$(stat <FILE> | sed -n -e 's/Modify:\s//p' | sed ...)
donde | sed ...
se puede reemplazar con cualquiera que sea su solución a este problema.
Respuesta1
date
(al menos en la implementación GNU común hoy en día) puede tomar el tiempo de modificación de un archivo directamente:
> date -r ~/.bashrc +'%Y-%m-%d %H:%M:%S %z'
2015-11-10 18:50:49 +0100
(o cualquier formato que desees)