1. 程式人生 > >Linux時間戳和標準時間的互轉-zz

Linux時間戳和標準時間的互轉-zz

在LINUX系統中,有許多場合都使用時間戳的方式表示時間,即從1970年1月1日起至當前的天數或秒數。如/etc/shadow裡的密碼更改日期和失效日期,還有代理伺服器的訪問日誌對訪問時間的記錄等等。 下面介紹幾種時間戳格式和標準時間格式轉換的方法: 1、分別以標準格式和時間戳來顯示當前時間
[[email protected] ~]# date    
2010年 08月 10日 星期二 03:39:21 CST   
[[email protected] ~]# date +%s 
1281382775
2、顯示指定時間的時間戳
[[email protected] ~]# date -d "2010-07-20 10:25:30" +%s    
1279592730

3、將時間戳轉換為標準時間格式
方法1:使用date命令
[[email protected] ~]# date -d "@1279592730" 
 2010年 07月 20日 星期二 10:25:30 CST    
[[email protected] ~]# date -d "1970-01-01 utc 1279592730 seconds" 
 2010年 07月 20日 星期二 10:25:30 CST    
[[email protected] ~]# date -d "1970-01-01 14781 days" "+%Y/%m/%d %H:%M:%S" 
 2010/06/21 00:00:00
[[email protected] tmp]#  date -d "@1279592730" 
 Tue Jul 20 10:25:30 CST 2010
 [[email protected] tmp]#  date -d "@1279592730" +"%Y%m%d %H:%M:%S"
 20100720 10:25:30
 [[email protected] tmp]#  date -d "@1279592730" +"%F %H:%M:%S" 
2010-07-20 10:25:30
 [[email protected] tmp]# date -d "1970-01-01 utc 1279592730 seconds"  
Tue Jul 20 10:25:30 CST 2010
 [[email protected] tmp]# date -d "1970-01-01 utc 1279592730 seconds" +"%F %H:%M:%S"
2010-07-20 10:25:30
方法2:使用awk裡的時間函式
[
[email protected]
~]# echo "1279592730" |awk '{print strftime ("%F %T",$0)}' 
 2010-07-20 10:25:30
方法3:使用perl處理
[[email protected] ~]# perl -e 'print localtime(1279592730)."\n";' 
 Tue Jul 20 10:25:30 2010
補充: 關於時間格式的解釋 UTC  (Universal Time Coordinated,UTC)世界協調時間 CST  (China Standard Time UTC+8:00)中國沿海時間(北京時間) GMT  (Greenwich Mean Time)格林威治標準時間: 系統時區設定:
[[email protected] ~]# vim /etc/sysconfig/clock    
ZONE="Asia/Shanghai" 
 UTC=true
 ARC=false      
[[email protected] ~]# cp /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
oracle 中將unix/linux時間戳進行轉換unix/linux時間戳是按照從格林威治時間1970年1月1日期計算的一個秒數。unix/linux時間戳轉換為標準時間格式(主要是注意時區問題):select TO_DATE('19700101','yyyymmdd') + 1235728935/86400 +TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))/24 from dual 其中1235728935就是unix/linux時間戳,轉換完之後就表示為 2009-2-27 18:02:15。反過來也一樣,還是要考慮時區:select (to_date('2009-2-27 18:02:15','yyyy-mm-dd hh24:mi:ss') - to_date('1970-1-1','yyyy-mm-dd'))*86400- TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))*3600 from dual

相關推薦

Linux時間標準時間

在LINUX系統中,有許多場合都使用時間戳的方式表示時間,即從1970年1月1日起至當前的天數或秒數。如/etc/shadow裡的密碼更改日期和失效日期,還有代理伺服器的訪問日誌對訪問時間的記錄等等。下面介紹幾種時間戳格式和標準時間格式轉換的方法:1、分別以標準格式和時間戳來顯示當前時間[[email

Linux時間標準時間-zz

在LINUX系統中,有許多場合都使用時間戳的方式表示時間,即從1970年1月1日起至當前的天數或秒數。如/etc/shadow裡的密碼更改日期和失效日期,還有代理伺服器的訪問日誌對訪問時間的記錄等等。 下面介紹幾種時間戳格式和標準時間格式轉換的方法: 1、分別以標準格式和時間戳來顯示當前時間 [[emai

C#時間格式化日期

有時候我們要對C#時間進行轉換,達到不同的顯示效果 預設格式為:2005-6-6 14:33:34 如果要換成成200506,06-2005,2005-6-6或更多的該怎麼辦呢 我們要用到:DateTime.ToString的方法(String,IFormatProvider) string 為你需

iOS 時間標準時間的轉換

#pragma mark--時間戳轉保準時間 - (NSString *)timerWith:(NSString *)time { NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

【JavaScript】標準日期、中國標準時間時間、毫秒數

首先要明確這三種格式是什麼樣子的: 標準日期:2017-09-19 或 2017-09-19 20:00:00 中國標準時間:Mon Oct 23 2017 17:20:13 GMT+

linux時間與date的

long 轉date [root@Vm95 20170801_2_86400]# date -d @1501570226 2017年 08月 01日 星期二 14:50:26 CST date

C語言 時間標準格式的轉換

[cpp] view plaincopyprint? int main(int argc, char **argv)  {  time_t t;      t = time(NULL);  structtm *lt;  int ii = time(&t);

php獲取今日開始時間結束時間

mktime date 開始時間 begin 時間 ide nth 時間戳 oda 1、php獲取今日開始時間戳和結束時間戳 $beginToday=mktime(0,0,0,date(‘m‘),date(‘d‘),date(‘Y‘));$endToday=mktime(

php 獲取今日、昨日、上周、本月的起始時間結束時間的方法

.cn str OS pad yesterday lock cells highlight tle php 獲取今日、昨日、上周、本月的起始時間戳和結束時間戳的方法,主要使用到了 php 的時間函數 mktime。下面首先還是直奔主題以示例說明如何使用 mktime 獲取

java 時間PHP時間 的轉換 php time()

time 時間 去掉 ech 導致 format ava 轉換問題 scu 最近在弄discuz,數據庫mysql,時間類型int 10 總結一下java 時間戳和PHP時間戳 的轉換問題: 由於精度不同,導致長度不一致,直接轉換錯誤。 JAVA時間戳長度是13位,如:12

PHP的strtotime()函式轉換的時間實際時間不一致解決方案

做一個時間區間搜尋的功能時,遇到一個問題,使用strtotime()轉換時間去比較時,發現搜尋不到,前端傳遞的是   但是PHP轉換後時間戳為1540732715,相當於   與實際時間相差8小時,所以搜尋不到的原因就在此。解決問題很簡單。 修改P

MYSQL時間一般時間格式相互轉化

原文地址:【http://www.2cto.com/database/201208/145029.html】 1、UNIX_TIMESTAMP(date) UNIX_TIMESTAMP(date)   如果沒有引數呼叫,返回一個Unix時間戳記(從'1970-01-01 00:00

php算每月天數方法,十二個月每月開始時間結束時間方法

/*算天數*/ function is_yue_tian_num($nian,$month){ if (in_array($month, array(1, 3, 5, 7, 8, 01, 03, 05, 07, 08, 10, 12))) { $text =

php 獲取今日、昨日、上週、本月的起始時間結束時間的方法

//php獲取今日開始時間戳和結束時間戳 $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y')); $endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;//

時間標準時間的相互轉化

1.時間戳轉化為標準時間 Unix時間戳(Unix timestamp),或稱Unix時間(Unix time)、POSIX時間(POSIX time),是一種時間表示方式,定義為從格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月

C實現Unix時間本地時間轉化

我們平常說時間都說的幾點幾分幾秒,星期幾,但是在計算機裡面並不是直接使用我們所說的時間,而是使用Unix時間戳,這樣不管是哪個平臺,哪個系統,都可以根據自己對時間的定義進行轉換,像Java,PHP等都提供了介面來進行轉化,C庫裡面也有這樣的函式,那具體是怎麼實現

unix時間普通時間 轉換

unix時間戳是從1970年1月1日(UTC/GMT的午夜)開始所經過的秒數,不考慮閏秒,以秒為單位 new Date().getTime()獲得的是以毫秒為單位的 js中獲取unix時間戳的方式

Unix時間北京時間相互轉換

場景需求:介面上有時間顯示,不管是服務端還是app端需要將Unix時間戳轉換成北京時間 坑:網上基本上都是這樣的解法 坑:很容易讓人疑惑我全出來的123456789是int型別的,其實這個123456789是long型別的。 具體Code程式碼如下:

java 時間PHP時間 的轉換[10位13位]

總結一下java 時間戳和PHP時間戳 的轉換問題:  由於精度不同,導致長度不一致,直接轉換錯誤。  JAVA時間戳長度是13位,如:1294890876859  PHP時間戳長度是10位, 如:1294890859  主要最後三位的不同,JAVA時間戳在PHP中使用,

(Lua) 客戶端本地時間伺服器時間不一致的解決方案

問題來源:伺服器的時間是固定的,國內一般都設定為北京時間(東8時區的時間),而客戶端分佈在世界各地,客戶端系統設定的時區是不固定的。很多時候在設計時,沒有考慮時區不一致的情況,直接使用時間戳來進行時間轉換和比較,往往出現很多預想不到的問題。基本概念/方法:1、【時區】:全世界