@TomMcKenzie'nin başka bir cevaba yaptığı yorumda söylediği gibi, date -r 123456789
bu yana saniyeler olarak verilen zamanlar için tartışmasız daha yaygın (yani daha yaygın olarak uygulanan) basit bir çözüm, ancak ne yazık ki evrensel garantili taşınabilir bir çözüm yok.
-d
Sistemlerinin birçok türlerinde seçenek GNU tarihten en fazla tamamen farklı bir şey ifade --date
uzantısı. Ne yazık ki GNU Date -r
bu diğer uygulamalarla aynı şeyi yorumlamıyor . Bu yüzden ne yazık ki hangi sürümünü kullandığınızı bilmeniz gerekiyor date
ve birçok eski Unix date
komutu her iki seçeneği de desteklemiyor.
Daha da kötüsü, POSIX , komut satırından bir Unix zamanını biçimlendirmek için hiçbir komutta (benim bildiğim kadarıyla) date
ne tanır ne -d
de -r
standart bir yol sunmaz (çünkü POSIX Awk de eksiktir strftime()
). ( touch -t
Ve kullanamazsınızls
eski nedeniyle Unix Zaman beri saniye olarak verilen bir zaman kabul etmez.)
Brian Kernighan'dan doğrudan temin edilebilen The One True Awk artık strftime()
yerleşik bir systime()
işleve ve Unix Epoch'tan bu yana geçerli zamanı saniyeler içinde döndüren bir işleve sahip olsa da, belki de Awk çözümü en taşınabilir çözümdür.