Como @TomMcKenzie dice en un comentario a otra respuesta, date -r 123456789
podría decirse que es una solución simple más común (es decir, más ampliamente implementada) para tiempos dados como segundos desde la época de Unix, pero desafortunadamente no hay una solución portátil universal garantizada.
La -d
opción en muchos tipos de sistemas significa algo completamente diferente a la --date
extensión de GNU Date . Lamentablemente, GNU Date no interpreta -r
lo mismo que estas otras implementaciones. Así que desafortunadamente tienes que saber qué versión date
estás usando y muchos Unix más antiguosdate
comandos no admiten ninguna de las opciones.
Peor aún, POSIX date
no reconoce ninguno -d
ni -r
proporciona ninguna forma estándar en ningún comando (que yo sepa) para formatear un tiempo Unix desde la línea de comandos (ya que POSIX Awk también carece strftime()
). (No puedes usar touch -t
yls
porque el primero no acepta un tiempo dado en segundos desde la época de Unix).
Tenga en cuenta que The One True Awk disponible directamente de Brian Kernighan ahora tiene la strftime()
función incorporada, así como una systime()
función para devolver el tiempo actual en segundos desde la época de Unix), por lo que tal vez la solución Awk sea la más portátil.