使用Shell獲取當前時間

在shell腳本里常常需要獲取系統時間來處理某項操作,今天系統的學習了一下如何獲取系統時間。記錄如下: linux的系統時間在shell里是可以直接調用系統變量的,如獲取今天時期:date +%Y%m%ddate +%F$(date +%y%m%d) 命令輸出結果如下:

[[email protected] sh]# date +%Y%m%d 
20120727 
[[email protected] sh]# date +%F 
2012-07-27 
[[email protected] sh]# date +%y%m%d 
120727 

獲取昨天時期:date -d yesterday +%Y%m%d 也可以寫成date -d -1day +%Y%m%d

[[email protected] sh]# date -d yesterday +%Y%m%d 
20120726 
[[email protected] sh]# date -d yesterday +%F 
2012-07-26 
[[email protected] sh]# date -d -1day +%y%m%d 
120726 
[[email protected] sh]# date -d -1day +%Y%m%d 
20120726 

獲取前天日期:date -d -2day +%Y%m%d,依次類推比如獲取10天前的日期:date -d -10day +%Y%m%d 或n天前的 date -d "n days ago" +%y%m%d,明天:date -d tomorrow +%y%m%d。注意以上中間有空格 。

至于你需要什么樣的日期時間格式,就需要應用相關的時間域參數來實現咯 相關時間域如下: % H 小時(00..23) % I 小時(01..12) % k 小時(0..23) % l 小時(1..12) % M 分(00..59) % p 顯示出AM或PM % r 時間(hh:mm:ss AM或PM),12小時 % s 從1970年1月1日00:00:00到目前經歷的秒數 % S 秒(00..59) % T 時間(24小時制)(hh:mm:ss) % X 顯示時間的格式(%H:%M:%S) % Z 時區 日期域 % a 星期幾的簡稱( Sun..Sat) % A 星期幾的全稱( Sunday..Saturday) % b 月的簡稱(Jan..Dec) % B 月的全稱(January..December) % c 日期和時間( Mon Nov 8 14:12:46 CST 1999) % d 一個月的第幾天(01..31) % D 日期(mm/dd/yy) % h 和%b選項相同 % j 一年的第幾天(001..366) % m 月(01..12) % w 一個星期的第幾天(0代表星期天) % W 一年的第幾個星期(00..53,星期一為第一天) % x 顯示日期的格式(mm/dd/yy) % y 年的最后兩個數字( 1999則是99) % Y 年(例如:1970,1996等)

注意:只有超級用戶才有權限使用date命令設置時間,一般用戶只能使用date命令顯示時間。


所屬標簽

無標簽

25选5玩法中奖