php 中国标准时间,linux 系统时间与硬件时间与中国标准时间
Linux下設置時區
提供兩種最根本有效的方式,就是更改時區。這里以更改為國內上海時間例子,其他地方時區同理。
方法一
備份文件
mv /etc/localtime /etc/localtime.bak
復制時區文件
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
這里選擇了亞洲下的上海時區,可ls查看各文件夾下的時區文件。
查看當前時間
date
是否已經是正確時間啦。一般建議使用第二種建立鏈接方式
方法二
備份文件
mv /etc/localtime /etc/localtime.bak
建立軟鏈接
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
查看當前時間
date
Linux系統有系統時間和硬件時間之分:
系統時間: 一般說來就是我們執行 date命令看到的時間,linux系統下所有的時間調用(除了直接訪問硬件時間的命令)都是使用的這個時間。
硬件時間:主板上BIOS中的時間,由主板電池供電來維持運行,系統開機時要讀取這個時間,并根據它來設定系統時間(注意:系統啟動時根據硬件時間設定系統時間的過程可能存在時區換算,這要視具體的系統及相關設置而定)。
1、查看當前系統時間date:
[root@surfer ~]#date
2018年06月 26日星期二 10:09:21 CST
2、設置系統時間date -s +時間
[root@surfer ~]#date -s 10:10:10
2018年06月 26日星期二 10:10:10 CST
3、設置系統時間時,如果還需要設置日期,則要將日期與時間值用雙引號包裹起來
[root@surfer ~]#date -s "2018/8/8 10:00:00"
2018年08月 08日星期三 10:00:00 CST
4、查看硬件時間用hwclock或者clock命令:
[root@surfer ~]#hwclock
2018年06月26日 星期二 10時13分02秒? -0.805503 秒
[root@surfer ~]#clock
2018年06月26日 星期二 10時13分07秒? -0.507462 秒
5、將硬件時間寫入到系統時間:
[root@surfer ~]#hwclock -s
6、將系統時間寫入到硬件時間
[root@surfer ~]#hwclock -w
7、時間同步,Linux系統需安裝ntpdate
檢查是否安裝了ntpdate : rpm -qa | grep ntpdate
如果沒有安裝則運行如下命令:yum install ntpdate
命令: ntpdate? www.pool.net.org
8、contab命令
通過vi /etc/crontab命令可以看到定時任務的書寫格式
[root@surfer ~]# vi/etc/crontab
SHELL=/bin/bash????? #SHELL變量指定了系統要使用哪個shell
PATH=/sbin:/bin:/usr/sbin:/usr/bin??? #PATH變量指定了系統執行命令的路徑
MAILTO=root??? #MAILTO變量指定了crond的任務執行信息將通過電子郵件發送給root用戶,如果MAILTO變?????量的值為空,則表示不發送任務執行信息給用戶
# For details seeman 4 crontabs
# Example of jobdefinition:
# .---------------- minute (0 - 59)?? #分鐘
# |? .------------- hour (0 -23)?? #小時
# |? |? .---------- day of month (1 - 31)? #日期
# |? |? |?.------- month (1 - 12) OR jan,feb,mar,apr …?#月份
# |? |? |?|? .---- day of week (0 - 6)(Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat? #周
# |? |?|? |? |
# *? *?*? *? * user-name?command to be executed
在以上各個字段中,還可以使用以下特殊字符:
星號(*):代表所有可能的值,例如month字段如果是星號,則表示在滿足其它字段的制約條件后每月都執行該命令操作。
逗號(,):可以用逗號隔開的值指定一個列表范圍,例如,“1,2,5,7,8,9”
橫杠(-):可以用整數之間的橫杠表示一個整數范圍,例如“2-6”表示“2,3,4,5,6”
斜線(/):可以用斜線指定時間的間隔頻率,例如“0-23/2”表示每兩小時執行一次。同時斜線可以和星號一起使用,例如*/10,如果用在minute字段,表示每十分鐘執行一次。
crontab -l? :列出當前用戶的crontab文件內容
* * * * */usr/local/gse/agent/bin/gsectl watch
crontab -e? :編輯當前用戶的crontab文件內容
[root@surfer data]#crontab -e
*/1 * * * * echo"hello world">>/data/code.txt
在這里我添加了一個定時任務*/1 * * * * echo"hello world">>/data/code.txt ?:意思是每一分鐘打印一次hello world,并且重定向到了/data/code.txt文件里面,幾分鐘過后查看code.txt,出現了如下內容,說明這個定時任務已經開始執行
[root@surfer data]# cat code.txt
hello world
hello world
hello world
hello world
總結
以上是生活随笔為你收集整理的php 中国标准时间,linux 系统时间与硬件时间与中国标准时间的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java web 模型,从零构建轻量级J
- 下一篇: java 线程可见性,Java多线程之内