Bazı Unix zaman damgalarım var (örneğin, 1357810480, bu nedenle temelde geçmişte). Onları Perl kullanarak okunabilir bir tarih formatına nasıl dönüştürebilirim?Unix zaman damgasını Perl'de okunabilir bir tarihe dönüştürün
cevap
Bunun için localtime
kullanabilirsiniz.
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($unix_timestamp);
Sen
my ($S, $M, $H, $d, $m, $Y) = localtime($time);
$m += 1;
$Y += 1900;
my $dt = sprintf("%04d-%02d-%02d %02d:%02d:%02d", $Y,$m, $d, $H, $M, $S);
kullanabilirsiniz Ama strftime
ile biraz basittir: daha uygun olmadığını
use POSIX qw(strftime);
my $dt = strftime("%Y-%m-%d %H:%M:%S", localtime($time));
localtime($time)
gmtime($time)
ile ikame edilebilir.
Time::Piece için mükemmel bir kullanım (standart 5.10'dan beri Perl'de standarttır).
use 5.010;
use Time::Piece;
my $unix_timestamp = 1e9; # for example;
my $date = localtime($unix_timestamp)->strftime('%F %T'); # adjust format to taste
say $date; # 2001-09-09 02:46:40
''% f% T'' benim için çalışmaz (belki benim yerimden dolayı), ancak '% Y-% m-% d'' çalışır. –
Hızlı kabuk tek satırlık:
perl -le 'print scalar localtime 1357810480;'
Thu Jan 10 10:34:40 2013
Veya, her satırda bir tane, bir dosyada damgaları için ne varsa: Bir varsa,
perl -lne 'print scalar localtime $_;' <timestamps
zarif ve basit –
Bu kabul edilen cevap olmalıdır. Diğerleri, insanlar tarihlerinde daha fazla derinlik istediğinde kullanılabilir. Sadece bir zaman damgasına bakmak için, skaler localtime, bitti. – felwithe
Ya Katıştırılmış zaman damgaları ile dosya, bunları aşağıdaki yerle dönüştürebilirsiniz:
$ cat [file] | perl -pe 's/([\d]{10})/localtime $1/eg;'
Tam olarak ihtiyacım olan buydu! Sadece günlük dosyamı bu tek liner ve BINGO anlık tarih/zamanlarına bağlayabilirim. – rob
JDawg'ın cevabını beğendim ama üzerinde çalıştığım bir RHEL sisteminde düzgün çalışmasını sağlayamadım. Bunu işe alabiliyordum. Umarım bu birisine yardım eder. Bir dosyanın içeriğini dönüştürülmüş zaman damgalarını yerinde gösterir.
cat filename | perl -pe 's/(\d+)/localtime($1)/e'
- 1. unix zaman damgasını H2 zaman damgasına dönüştürün
- 2. Joda LocalDateTime için Unix zaman damgasını dönüştürün
- 3. VARCHAR zaman damgasını TIMESTAMP'e dönüştürün?
- 4. Chrome geçmiş tarih/saat damgasını okunabilir biçime dönüştürün
- 5. Dönüştürün Tarihi UNIX zaman damgası
- 6. Toplama Çerçevesi - Unix Zaman Damgasını ISODate'e Dönüştürme
- 7. Mikrosaniye doğruluğu ile unix zaman damgasını sıkıştırmak
- 8. Android'de Unix zaman damgasını nasıl oluşturabilirim?
- 9. Bir UNIX dizini zaman damgasını değiştirdiğinde ne zaman
- 10. Zaman dilimi ile zaman damgasını angular.js'de normal tarihe nasıl yazdırılır?
- 11. Unix zaman damgasını biçimlendirecek bir mysql işlevi var mı?
- 12. Bir önceki Çarşamba günü gece yarısının unix zaman damgasını al
- 13. JavaScript'te unix zaman damgasını 1000'e neden katmam gerekiyor?
- 14. C'deki unix zaman damgasını int cinsinden nasıl alabilirim?
- 15. Bir dosyaya dokunun - değiştirilen zaman damgasını güncelleyin
- 16. Unix Zaman Damgası Python
- 17. Logstash zaman damgasını ayrıştıramadı
- 18. javascript'te bir tarihe zaman ekleme
- 19. Ruby/Rails: Bir UNIX zaman damgasına dönüştürme
- 20. matplotlib'de unix zaman damgalarını çizme
- 21. UNIX Zaman Damgası MySQL DATETIME
- 22. Yerel saati (10 basamaklı sayı) okunabilir bir tarih formatına dönüştürün
- 23. NV21 bayt dizisini bitmap okunabilir biçime dönüştürün
- 24. Yeni nvD3'e - unix zaman damgasını x eksenindeki tarihler olarak nasıl gösterebilirim?
- 25. Fiddler'da istek zaman damgasını göster?
- 26. Her yinelemede zaman damgasını bir ay ekleyin
- 27. Tarih dizgisini Javascript'teki uygun tarihe dönüştürün
- 28. php - zaman damgası dizesini okunabilir zaman biçimine dönüştürmeye yardımcı olur
- 29. Python: Unix zaman damgasını bir sonraki gün 00:00 ve 23:59'da nasıl alabilirim?
- 30. Elm'de bir Date nesnesine UNIX zaman damgasının dönüştürülmesi
teşekkürler ama ben '$ Zamanı 'dizisinde vereceğini, Evet – hurley
saklamak istiyorum. Bundan sonra saat, örneğin $ zamanında [2] 'dir. – Andomar
teşekkürler, ancak biçimlendirilmiş tarihi doğrudan tek bir değişkende saklamak istiyorum. bunun için herhangi bir olasılık görüyor musunuz? Geçerli çözümüm geçerli tarihi kaydetmek için, verilen zaman damgası ne olursa olsun – hurley