📜  bash 获取时间戳 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:13:38.043000             🧑  作者: Mango

Bash 获取时间戳 - Shell-Bash

在 Shell-Bash 编程中,获取当前时间戳是很常见的需求。本文将介绍在 Bash 脚本中获取时间戳的方法。

date 命令获取时间戳

使用 date 命令可以获取当前系统时间的时间戳,也可以将指定时间转化为时间戳。

获取当前时间戳
#!/bin/bash

timestamp=$(date +%s)
echo "当前时间戳: ${timestamp}"

输出:

当前时间戳: 1632455335

注:+%sdate 命令的参数,表示输出时间戳。

根据指定时间获取时间戳
#!/bin/bash

datetime="2021-09-24 08:30:00"
timestamp=$(date -d "${datetime}" +%s)
echo "${datetime} 的时间戳是: ${timestamp}"

输出:

2021-09-24 08:30:00 的时间戳是: 1632469800

注:-ddate 命令的参数,表示输入要转化的时间,${datetime} 是要转化的时间变量,+%s 是输出时间戳。

使用内置变量获取时间戳

Bash 也有内置的变量 $SECONDS 可以获取从脚本执行开始到现在的秒数。

#!/bin/bash

echo "脚本执行了 ${SECONDS} 秒"

输出:

脚本执行了 1 秒
总结

本文介绍了在 Bash 脚本中获取时间戳的两种方法:使用 date 命令和使用内置变量 $SECONDS。其中,date 命令可以精确到秒,而 $SECONDS 内置变量只能获取从脚本执行开始到现在的秒数。在实际应用中,可根据需求选择不同的方法来获取时间戳。