Linux下修改时间及date使用
[root@host1 ~]# date #显示时间 2017年 06月 01日 星期四 17:02:59 CST
以指定格式显示时间:
[root@host1 ~]# date +%Y%m%d 20170601 [root@host1 ~]# date +"%Y-%m-%d %H:%M:%S" 2017-06-01 17:53:16
设置时间:
[root@host1 ~]# date -s "19:19:19" 2017年 06月 01日 星期四 19:19:19 CST [root@host1 ~]# date -s "20170601 10:00:00" 2017年 06月 01日 星期四 10:00:00 CST [root@host1 ~]# date 0501121217 #后面的格式是:月日时分年,不精确到秒 2017年 05月 01日 星期一 12:12:00 CST [root@host1 ~]# date -s 13:13:13 #只设置时间,日期不改变 2017年 05月 01日 星期一 13:13:13 CST [root@host1 ~]# date -s 20171001 #设置日期,但是时间会变成00:00:00 2017年 10月 01日 星期日 00:00:00 CST
当前时间转时间戳:
[root@host1 ~]# date +%s 1493612123
指定时间转时间戳:
[root@host1 ~]# date -d '20170601 10:00:00' +%s 1496282400
时间戳转换为日期时间:
[root@host1 ~]# date -d @1496282400 2017年 06月 01日 星期四 10:00:00 CST
时间戳转换为日期时间,并指定时间格式:
[root@host1 ~]# date -d @1496282400 +"%Y-%m-%d %H:%M:%S" 2017-06-01 10:00:00
修改服务器时间(或者使用tzselect命令按照提示选择)
cp /usr/share/zoneinfo/Asia/Shanghai/etc/localtime cat > /etc/sysconfig/clock << EOF ZONE="Asia/Shanghai" UTC=false ARC=false EOF
如果不生效则在/etc/profile中添加:
echo "export TZ='CST-8'" >> /etc/profile source /etc/profile
即时生效一下就全部搞定。
同步网络时间:
[root@host1 ~]# ntpdate -u ntp.api.bz # ntp.api.bz :NTP服务器(上海)
1 Jun 17:52:36 ntpdate[29607]: step time server 17.253.72.241 offset -10477854.391594 sec
[root@host1 ~]# crontab -l
0 6 * * * /usr/sbin/ntpdate -u 195.13.1.153
写一个计算执行命令或者脚本时间的小脚本:
#!/bin/bash start=`date +%s` ntpdate -u ntp.api.bz end=`date +%s` diff=$[end - start] echo "同步时间共用了:$diff seconds."
再写一个优化服务器的小脚本,我们一般删除没用的文件执行的是下面的命令:
find /tmp -name "*.txt" -mtime +1 -exec rm -rf {} ;
使用这条命令没错,但是如果文件多了,每天都在crontab下跑,那么执行此命令时负载很高,影响服务器性能,因为find很耗费资源
这时我们使用如下命令也可以解决:
#!/bin/sh cd /tmp time=`date -d "2 day ago" "+%b %d"` ls -l|grep ".txt" |grep "$time"|awk '{print $NF}'|xargs rm -rf
PS:各国NTP服务器列表
[INTERNATIONAL NTP server list.]
区域[zone] | 域名[Domain] | IP池[IP Pool] |
---|---|---|
中国[China] | cn.ntp.org.cn | [58.220.207.226][47.92.108.218] [202.112.29.82] [202.108.6.95] [120.25.108.11] [182.92.12.11] [115.28.122.198] |
中国台湾[ChinaTaiwan] | tw.ntp.org.cn | [58.220.207.226](节点失效,暂时解析至国内节点) |
美国[America] | us.ntp.org.cn | [24.56.178.140] |
新加坡[Singapore] | sgp.ntp.org.cn | [103.11.143.248] |
韩国[korea] | kr.ntp.org.cn | [211.233.40.78] |
德国[Germany] | de.ntp.org.cn | [131.188.3.220] [131.188.3.223] |
日本[Japan] | jp.ntp.org.cn | [133.100.11.8] |
-注:多组IP则为多IP轮询[Group IP was using IP-list polling]。