Linux/UNIX:将时代秒转换为当前时间
时间:2020-01-09 10:37:49 来源:igfitidea点击:
在UNIX或Linux操作系统下,如何将Epoch秒转换为当前时间?
Unix时间(即POSIX时间)是一种用于描述时间点的系统,该时间点定义为自1970年1月1日午夜多点协调世界时(UTC)起经过的秒数,不包括leap秒。
打印当前的UNIX时间
执行以下命令以显示自纪元以来的秒数:
date +%s
输出示例:
1268727836
将时代转换为当前时间
输入命令:
date -d @Epoch date -d @1268727836 date -d "1970-01-01 1268727836 sec GMT"
输出示例:
Tue Mar 16 13:53:56 IST 2010
请注意,@功能仅适用于最新版本的日期(GNU coreutils v5.3.0 +)。
要将秒数转换回更易读的形式,请使用如下命令:
date -d @1268727836 +"%d-%m-%Y %T %z"
输出示例:
16-03-2010 13:53:56 +0530
警告!注意,date和awk命令语法可能不适用于所有版本的UNIX。
请参考系统本地的手册页。
AWK示例
echo 1268727836 | awk '{print strftime("%c",)}'
Perl示例
perl -e "print scalar(localtime(1268727836))"