我有一些Unix時間戳(例如,1357810480,所以它們主要是過去的)。我如何使用Perl將它們轉換爲可讀的日期格式?將Unix時間戳轉換爲Perl中的可讀日期
回答
您可以使用localtime
。
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($unix_timestamp);
你可以使用
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);
但它與strftime
簡單一些:
use POSIX qw(strftime);
my $dt = strftime("%Y-%m-%d %H:%M:%S", localtime($time));
localtime($time)
可以gmtime($time)
如果是比較合適的替代。
Time::Piece(從5.10起的Perl中的標準)的完美用法。
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''不適用於我(也許是因爲我的區域設置),但'%Y%m-%d''確實有效。 – 2017-08-27 02:44:28
快速殼的一行:
perl -le 'print scalar localtime 1357810480;'
Thu Jan 10 10:34:40 2013
或者,如果你碰巧有時間戳的文件,每行一個:
perl -lne 'print scalar localtime $_;' <timestamps
優雅而簡單 – 2013-10-22 17:00:48
這應該是被接受的答案。其他人可以在人們希望在他們的日期更深入時使用。只是看一個時間戳,'標量本地時間',完成。 – felwithe 2016-03-30 21:09:41
或者,如果你有一個帶有嵌入時間戳的文件,您可以將其轉換爲:
$ cat [file] | perl -pe 's/([\d]{10})/localtime $1/eg;'
這正是我需要的!我可以將我的日誌文件輸入到perl單線程和BINGO即時日期/時間。 – rob 2015-09-11 14:41:10
我喜歡JDawg的回答,但無法在我正在研究的RHEL系統上正常工作。我能夠得到這個工作。希望這會幫助某人。它顯示轉換後的時間戳文件的內容。
cat filename | perl -pe 's/(\d+)/localtime($1)/e'
- 1. 將日期轉換爲UNIX時間戳
- 2. 如何使用Perl將日期轉換爲Unix時間戳
- 3. 在Unix中將Unix時間轉換爲可讀日期
- 4. Perl - 將日期時間戳轉換爲日期時間對象
- 5. 將unix時期時間戳轉換爲TSQL日期時間
- 6. 將SAS日期時間轉換爲SAS中的UNIX時間戳
- 7. 將日期時間轉換爲python中的unix時間戳
- 8. PHP日期轉換爲unix時間戳
- 9. 將時間戳轉換爲可讀的日期/時間PHP
- 10. 在查詢期間將時間戳轉換爲可讀日期
- 11. 將unix時間戳轉換爲laravel中的人類可讀日期
- 12. 在PHP中將unix時間戳轉換爲人類可讀的日期?
- 13. 將日期和時間轉換爲UNIX時代時間戳
- 14. 如何使用Perl將日期時間轉換爲Unix時間戳
- 15. 將日期時間格式轉換爲Unix時間戳Pandas
- 16. PHP將MySQL日期時間轉換爲Unix時間戳
- 17. 將日期時間轉換爲Unix時間戳
- 18. JQ:將UNIX時間戳轉換爲日期時間
- 19. 如何將unix時間戳轉換爲人類可讀時間?
- 20. 如何將Unix時間戳轉換爲AIX 5.3中的可讀時間戳
- 21. 如何將unix時間戳轉換爲日曆日期moment.js
- 22. 如何將unix時間戳列表轉換爲人類可讀日期列表
- 23. 轉換日期在C++ UNIX時間戳
- 24. 如何在MySql中將unix時間戳轉換爲UTC日期?
- 25. 在Android模擬器中將unix時間戳轉換爲日期
- 26. 在java中將unix時間戳轉換爲日期
- 27. 將unix時間戳轉換爲日期時不匹配
- 28. 將Unix時間戳轉換爲日期爲字符串? Swift
- 29. 將時間戳轉換爲可讀日期
- 30. Oracle SQL查詢將Unix時間戳轉換爲Java的日期
謝謝,但我想存儲 – hurley 2013-02-25 10:08:24
是啊,這將使在'$ time'數組。之後,小時在'$ time [2]'例如。 – Andomar 2013-02-25 10:09:31
謝謝,但我想直接在一個變量中存儲格式化的日期。你有看到這種可能嗎?我的當前解決方案似乎可以保存當前日期,不管給定時間戳的年齡有多大 – hurley 2013-02-25 10:11:05