1.時區的修改:
1.圖形界面配置時區的命令:
dpkg-reconfigure tzdata
該操作會修改兩個文件
/etc/timezone #該文本文件可直接修改 /etc/localtime #該文件可通過軟連接修改 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 或者直接 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 所以時區的修改需要修改兩個地方: 1.修改 /etc/timezone :修改該文件 2./usr/share/zoneinfo/Asia/把該目錄下對應的文件複製到/etc/下面並命名爲localtime 然後過段時間使用date指令查看便會發現時區已改變。
2.文本方法:
root@debian:~# tzselect Please identify a location so that time zone rules can be set correctly. Please select a continent or ocean. 1) Africa 2) Americas 3) Antarctica 4) Arctic Ocean 5) Asia 6) Atlantic Ocean 7) Australia 8) Europe 9) Indian Ocean 10) Pacific Ocean 11) none - I want to specify the time zone using the Posix TZ format. 3.直接編輯 /etc/timezone
2.Linux時間
Linux時間分爲系統時間和硬件時間
系統時間:當前Linux內核中的時間
硬件時間:主板上有電池供電的時鐘,這個硬件時鐘可以在bios鍾進行設置,當Linux啓動時,會去讀取硬件時間作爲系統時間,然後系統時間會獨立於硬件運作。
系統時間和時區有關;
UTC :時間協調時間
GMT:格林威治標準時間,
在/etc/default/rcS這個文件中設置系統是否使用UTC,
UTC=yes/no
計算的主板上有自己的硬件時間,關機也不會丟失
BIOS=本地時間,UTC=no
BIOS=UTC時間,UTC=yes
3.時間的設置
#dibian下面修改時間方法: 1.修改爲指定的年月日 date -s '月/日/年' root@debian:~# date 2014年 09月 19日 星期五 00:07:40 CST root@debian:~# date -s'09/20/14' 2014年 09月 20日 星期六 00:00:00 CST root@debian:~# date 2014年 09月 20日 星期六 00:00:03 CST 2.修改爲指定的時分秒 date -s '時:分:秒' 3.修改爲指定時間 date -s "YYYY/MM/DD hh:mm:ss" root@zhu:~# date Fri Sep 19 21:33:52 CST 2014 root@zhu:~# date -s 'Fri Sep 19 22:33:52 CST 2014' Fri Sep 19 22:33:52 CST 2014 root@zhu:~# date Fri Sep 19 22:33:54 CST 2014 root@zhu:~# date -s '09/19/14 21:33:54' Fri Sep 19 21:33:54 CST 2014 root@zhu:~# date Fri Sep 19 21:33:56 CST 2014 #修改系統時間方法如上。
root@zhu:~/log# date --help 用法:date [選項]... [+格式] 或:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] 以給定的格式顯示當前時間,或是設置系統日期。 -d,--date=字符串 顯示指定字符串所描述的時間,而非當前時間 -f,--file=日期文件 類似--date,從日期文件中按行讀入時間描述 -r, --reference=文件 顯示文件指定文件的最後修改時間 -R, --rfc-2822 以RFC 2822格式輸出日期和時間 例如:2006年8月7日,星期一 12:34:56 -0600 --rfc-3339=TIMESPEC 以RFC 3339 格式輸出日期和時間。 TIMESPEC=`date',`seconds',或 `ns' 表示日期和時間的顯示精度。 日期和時間單元由單個的空格分開: 2006-08-07 12:34:56-06:00 -s, --set=字符串 設置指定字符串來分開時間 -u, --utc, --universal 輸出或者設置協調的通用時間 --help 顯示此幫助信息並退出 --version 顯示版本信息並退出 給定的格式FORMAT 控制着輸出,解釋序列如下: %% 一個文字的 % %a 當前locale 的星期名縮寫(例如: 日,代表星期日) %A 當前locale 的星期名全稱 (如:星期日) %b 當前locale 的月名縮寫 (如:一,代表一月) %B 當前locale 的月名全稱 (如:一月) %c 當前locale 的日期和時間 (如:2005年3月3日 星期四 23:05:25) %C 世紀;比如 %Y,通常爲省略當前年份的後兩位數字(例如:20) %d 按月計的日期(例如:01) %D 按月計的日期;等於%m/%d/%y %e 按月計的日期,添加空格,等於%_d %F 完整日期格式,等價於 %Y-%m-%d %g ISO-8601 格式年份的最後兩位 (參見%G) %G ISO-8601 格式年份 (參見%V),一般只和 %V 結合使用 %h 等於%b %H 小時(00-23) %I 小時(00-12) %j 按年計的日期(001-366) %k hour, space padded ( 0..23); same as %_H %l hour, space padded ( 1..12); same as %_I %m month (01..12) %M minute (00..59) %n 換行 %N 納秒(000000000-999999999) %p 當前locale 下的"上午"或者"下午",未知時輸出爲空 %P 與%p 類似,但是輸出小寫字母 %r 當前locale 下的 12 小時時鐘時間 (如:11:11:04 下午) %R 24 小時時間的時和分,等價於 %H:%M %s 自UTC 時間 1970-01-01 00:00:00 以來所經過的秒數 %S 秒(00-60) %t 輸出製表符 Tab %T 時間,等於%H:%M:%S %u 星期,1 代表星期一 %U 一年中的第幾周,以週日爲每星期第一天(00-53) %V ISO-8601 格式規範下的一年中第幾周,以週一爲每星期第一天(01-53) %w 一星期中的第幾日(0-6),0 代表週一 %W 一年中的第幾周,以週一爲每星期第一天(00-53) %x 當前locale 下的日期描述 (如:12/31/99) %X 當前locale 下的時間描述 (如:23:13:48) %y 年份最後兩位數位 (00-99) %Y 年份 %z +hhmm 數字時區(例如,-0400) %:z +hh:mm 數字時區(例如,-04:00) %::z +hh:mm:ss 數字時區(例如,-04:00:00) %:::z 數字時區帶有必要的精度 (例如,-04,+05:30) %Z 按字母表排序的時區縮寫 (例如,EDT)
date指令日期格式之間轉換
root@zhu:~/log# date 2014年 10月 10日 星期五 18:42:45 CST root@zhu:~/log# date +%s 1412937769 root@zhu:~/log# date -d '@1412937769' 2014年 10月 10日 星期五 18:42:49 CST root@zhu:~/log# date -d '2014年 10月 10日 星期五 18:42:45 CST' +%s 1412943240 root@zhu:~/log# date -d @1361542596 +"%Y-%m-%d %H:%M:%S" 2013-02-22 22:16:36 root@zhu:~/log# date -d '2014年 10月 10日 星期五 18:42:45 CST' +"%Y-%m-%d %H:%M:%S" 2014-10-10 20:14:00
顯示指定時區的時間
root@zhu:~/log# TZ='Asia/Bangkok' date 2014年 10月 10日 星期五 17:55:13 ICT root@zhu:~/log# TZ='Asia/Shanghai' date 2014年 10月 10日 星期五 18:57:54 CST