ubuntu

Ubuntu时间戳与日期格式转换方法

小樊
56
2025-07-03 11:01:58
栏目: 智能运维

在Ubuntu系统中,可以使用多种方法来转换时间戳与日期格式。以下是几种常见的方法:

使用 date 命令

将时间戳转换为日期和时间:

date -d @<timestamp> +"%Y-%m-%d %H:%M:%S"

其中 <timestamp> 是你要转换的时间戳。例如:

date -d @1633072800 +"%Y-%m-%d %H:%M:%S"

输出可能是:

2021-10-01 00:00:00

将日期和时间转换为时间戳:

date -d "YYYY-MM-DD HH:MM:SS" +%s

其中 YYYY-MM-DD HH:MM:SS 是你想要转换的日期和时间。例如:

date -d "2021-10-01 00:00:00" +%s

输出可能是:

1633072800

处理毫秒级时间戳:

date -d @<timestamp> +"%Y-%m-%d %H:%M:%S.%3N"

例如:

date -d @1633072800000 +"%Y-%m-%d %H:%M:%S.%3N"

输出可能是:

2021-10-01 00:00:00.000

使用 Python 脚本

将时间戳转换为日期和时间:

import datetime

timestamp = 1633072800
dt_object = datetime.datetime.fromtimestamp(timestamp)
print(dt_object.strftime("%Y-%m-%d %H:%M:%S"))

将日期和时间转换为时间戳:

import datetime

dt_object = datetime.datetime.strptime("2021-10-01 00:00:00", "%Y-%m-%d %H:%M:%S")
timestamp = int(dt_object.timestamp())
print(timestamp)

使用 awk 命令

将时间戳转换为日期和时间:

awk -v ts=<timestamp> 'BEGIN {print strftime("%Y-%m-%d %H:%M:%S", ts)}'

例如:

awk -v ts=1633072800 'BEGIN {print strftime("%Y-%m-%d %H:%M:%S", ts)}'

输出可能是:

2021-10-01 00:00:00

将日期和时间转换为时间戳:

awk -F'[- :]' '{print mktime($1 " " $2 " " $3 " " $4 " " $5 " " $6 " " $7)}' <<< "2021-10-01 00:00:00"

输出可能是:

1633072800

这些方法可以帮助你在Ubuntu系统中轻松地进行时间戳与日期格式的转换。根据你的具体需求选择合适的方法即可。

0
看了该问题的人还看了