shell将GMT时间格式转为时间戳

shell将GMT时间格式转为时间戳

找了很久没有找到GMT时间格式的一些脚本处理方法,只能自己写啦:

  • 如果你的GMT是:"Aug 11 09:54:25 2022 GMT"(ipa包获取到的格式就是这样的) ,那么可以用这么命令:
#!/bin/bash
time_GMT="Aug 11 09:54:25 2022 GMT"
# GMT时间转为时间戳
timestamp=$(date -j -f "%b %d %H:%M:%S %Y GMT" "${time_GMT}" +%s)
echo "${time_GMT}转为时间戳:${timestamp}"
  • shell获取当前GMT时间,并转为时间戳
#!/bin/bash
# shell获取当前GMT时间
curtime_GMT=$(date -u '+%a, %d %b %Y %T GMT')
# Wed, 19 Jan 2022 04:02:43 GMT
curtimestamp=$(date -j -f "%a, %d %b %Y %H:%M:%S GMT" "${curtime_GMT}" +%s)
echo "当前时间${curtime_GMT}转为时间戳:${curtimestamp}"
date -r ${curtimestamp}
# Wed Jan 19 04:12:50 CST 2022  
# 这里CST时间是有问题的,差了八个小时

注意这种获取到的GMT时间传到时间戳时候,有八个小时时区差


参考:mac date命令 - 2BiTT - 博客园

更多date命令工具,具体可参考Linux shell时间处理大全,值得收藏 - 纯净天空

你可能感兴趣的:(shell将GMT时间格式转为时间戳)