shell,python,golang,日期时间与时间戳的转换

系统 1430 0

Shell

  • shell获取文件最后修改时间的秒时间戳:
          
            stat -c %Y $path/$newest_log
          
        
  • shell获取当前时间的秒时间戳:
          
            date +%s
          
        
  • 两个时间戳相减:
          
            timegap=$[$timestamp - $filetimestamp]
          
        
  • 将日期时间字符串转化为时间戳:
          
            date -d "2019-08-26" +%s
          
        
  • 将时间戳转化为日期时间字符串:
          
            date -d @1566748800
          
        
  • 获取n天前的日期时间:
          
            date -d "1 day ago" +"%Y-%m-%d"
          
        
  • 获取n分钟前的日期时间:

date -d "1 minute ago" +"%Y-%m-%d-%H-%M-%S"

获取n天后的日期时间:
date -d "1 day" +"%Y-%m-%d"

获取n分钟后的日期时间:
date -d "1 minute" +"%Y-%m-%d-%H-%M-%S"

python

          
            import datetime
# 获取当前时间
d1 = datetime.datetime.now()
print d1
# 当前时间加上半小时
d2 = d1 + datetime.timedelta(hours=0.5)
print d2
# 格式化字符串输出
d3 = d2.strftime('%Y-%m-%d %H:%M:%S')
print d3
# 将字符串转化为时间类型
d4 = datetime.datetime.strptime(date,'%Y-%m-%d %H:%M:%S.%f')
print d4

today = datetime.datetime.now()
yesterday = today - datetime.timedelta(days=1)
yesterday_str = yesterday.strftime('%Y-%m-%d')
          
        

golang

          
            package main  
   
import ( 
    "fmt" 
    "time"
) 
   
func main() { 
    ts := 十位时间戳
    intts, err := strconv.Atoi(ts)
          if err != nil {
              return err 
          }  //转为整形
    tm := time.Unix(int64(intts), 0)//转为int64
    t1 := tm.Format("2006-01-02 15:04:05") //转为日期字符串
    fmt.Println(t1) 
}
          
        
Format里必须用“2006-01-02 15:04:05"这个时间戳,分别代表年月日时分秒,简单来记的话就是 2006-1-2-3-4-5

更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论