shell 時間戳轉換

2021-08-31 20:35:58 字數 1186 閱讀 5655

在shell中,字串轉換為時間戳可以這樣做:

date -d "2010-10-18 00:00:00" +%s

輸出形如:

1287331200

其中,-d引數表示顯示指定的字串所表示的時間,+%s表示輸出時間戳。

而時間戳轉換為字串可以這樣做:

date -d @1287331200

輸出形如:

mon oct 18 00:00:00 cst 2010

如果要轉換成「2010-10-18 00:00:00」這種形式的時間戳,則這樣做:

date -d "1970-01-01 utc 1287331200 seconds" "+%f %t"

輸出形如:

2010-10-18 00:00:10

再多廢話一句,如果只要輸出日期,不要時間,則去掉 %t 就可以了:

date -d "1970-01-01 utc 1287331200 seconds" +%f

輸出形如:

2010-10-18

順便再記一下取昨天日期的方法:

1 date -d "yesterday" +"%y-%m-%d"

輸出形如:

2010-08-22

---------------------------------------

在shell中,字串轉換為時間戳可以這樣做:

date -d "2010-10-18 00:00:00" +%s

輸出形如:

1287331200

其中,-d引數表示顯示指定的字串所表示的時間,+%s表示輸出時間戳。

而時間戳轉換為字串可以這樣做:

date -d @1287331200

輸出形如:

mon oct 18 00:00:00 cst 2010

如果要轉換成「2010-10-18 00:00:00」這種形式的時間戳,則這樣做:

date -d "1970-01-01 utc 1287331200 seconds" "+%f %t"

輸出形如:

2010-10-18 00:00:10

再多廢話一句,如果只要輸出日期,不要時間,則去掉 %t 就可以了:

date -d "1970-01-01 utc 1287331200 seconds" +%f

輸出形如:

2010-10-18

Shell日期時間和時間戳的轉換

gitlab的備份檔案是以時間戳顯示的,類似 1438624820 gitlab backup.tar 為了更易於閱讀,想把檔名轉換成日期格式 2015 08 04 gitlab backup.tar 所以查詢了下shell裡時間轉換的方法,記錄如下備忘。date d 2015 08 04 00 0...

Shell日期時間和時間戳的轉換

gitlab的備份檔案是以時間戳顯示的,類似 1438624820 gitlab backup.tar 為了更易於閱讀,想把檔名轉換成日期格式 2015 08 04 gitlab backup.tar 所以查詢了下shell裡時間轉換的方法,記錄如下備忘。date d 2015 08 04 00 0...

時間戳轉換日期 日期轉換時間戳 時間戳轉換星期

時間戳轉換日期 string date orderinfo.getchangetime replace null dateformat sdf new dateformat mm dd string monthdate sdf.format new date long.parselong date ...