linux shell取得秒级时间戳
生活随笔
收集整理的這篇文章主要介紹了
linux shell取得秒级时间戳
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
什么是時間戳
在類UNIX系統中,日期被存儲為一個整數,其大小為自世界標準時間(UTC)1970年1月1日0時0分0秒起流逝的秒數。這個整數就是時間戳。在我們寫腳本的時候經常使用到一些時間統計的工作,時間戳就很有用了。
data 命令
date命令可以取得、設置時間和日期。具體用法如下
Usage: date [OPTION]... [+FORMAT]or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] Display the current time in the given FORMAT, or set the system date.可以用參數
date <+時間日期格式>:指定顯示時使用的日期時間格式。
日期格式字符串列表
%H 小時,24小時制(00~23)
%M 分鐘(00~59)
%s 從1970年1月1日00:00:00到目前經歷的秒數
%S 顯示秒(00~59)
%T 顯示時間,24小時制(hh:mm:ss)
%X 顯示時間的格式(%H:%M:%S)
使用時間戳測試某工作耗時
其實原理很簡單,就是在工作開始時幾下時間戳,工作結束時再記下時間戳。相減就得到耗費時間了。
腳本顯示如下:
執行效果如下:
> sh -x ./testping.sh++ date +%s + START_TIME_STAMP=1604285272 + ping www.baidu.com -c 4 PING www.a.shifen.com (61.135.169.121) 56(84) bytes of data. 64 bytes from 61.135.169.121: icmp_seq=1 ttl=55 time=1.35 ms 64 bytes from 61.135.169.121: icmp_seq=2 ttl=55 time=0.993 ms 64 bytes from 61.135.169.121: icmp_seq=3 ttl=55 time=0.986 ms 64 bytes from 61.135.169.121: icmp_seq=4 ttl=55 time=0.995 ms--- www.a.shifen.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 7010ms rtt min/avg/max/mdev = 0.986/1.081/1.352/0.159 ms ++ date +%s + END_TIME_STAMP=1604285284 ++ expr 1604285284 - 1604285272 + DELTA_TIME_STAMP=12 + echo 'spead 12 sec(s).' spead 12 sec(s).總結
以上是生活随笔為你收集整理的linux shell取得秒级时间戳的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微博数据爬虫——获取用户基本信息(三)
- 下一篇: linux 其他常用命令