Chinaunix首页 | 论坛 | 博客
  • 博客访问: 171380
  • 博文数量: 39
  • 博客积分: 2108
  • 博客等级: 大尉
  • 技术积分: 432
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-03 16:02
文章存档

2010年(38)

2009年(1)

我的朋友

分类: LINUX

2010-05-04 19:31:12

Linux 下日期显示和设置命令 date & hwclock 小结
---
1.1.1 设 置系统日期和时间 

可以使用下列 命令修改系统时间: 
# date {mmddhhmiyyyy.ss} 
mm--代 表月份 
dd--代 表日期 
hh--代 表 24 小时制的小时 
mi--代 表分钟 
yyyy--代 表年 
ss--代 表秒  
 
例如, 将 系统日期设置为 2008 年 01 月 31 日, 下午 10:19:53 
# date 013122192009.53 
 
也可以按照下 面的办法来设置: 
# date +%Y%m%d -s "20090131"  
# date 013122192009.53  
# date +%Y%m%d -s "20090131"  
# date -s "01/31/2009 22:19:53"  
# date -s "31 JAN 2009 22:19:53"  
# date set="31 JAN 2009 22:19:53" 
 
如果只设置时 间: 
# date +%T -s "22:19:53"  
# date +%T%p -s "10:19:53PM"  
 
+++
1.1.2 设 置硬件日期和时间(hwclock) 

在设置系统日 期和时间之前, 先要确定操作系统时间已经被设置恰当. 
设置硬件时间 要依赖于操作系统时间, 具体方法如下: 
# hwclock –systohc 
# hwclock --systohc --utc  
 
不加任何参数 使用 hwclock, 可以查看当前的硬件日期和时间.  
# hwclock  
 
查 看 clock 文件, 确认是否设置了 UTC(译者注:协调世界时): 
#cat /etc/default/rcS 
UTC=yes 

在其他一些版 本的 Linux(如 RedHat)中 可以这样查看: 
# cat /etc/sysconfig/clock  
ZONE="America/Los_Angeles"  
UTC=false  
ARC=false

 +++ 
1.1.3 用特 定格式显示当前时间

以下的方法可 以用各种不同的格式来显示当前时间: 
$ date  
Thu Jan 1 08:19:23 PST 2009  
 
$ date --date="now"  
Thu Jan 1 08:20:05 PST 2009 
  
$ date --date="today"  
Thu Jan 1 08:20:12 PST 2009  
 
$ date --date='1970-01-01 00:00:01 UTC +5 hours' +%s  
18001  
 
$ date '+Current Date: %m/%d/%y%nCurrent Time:%H:%M:%S'  
Current Date: 01/01/09  
Current Time:08:21:41  
 
$ date +"%d-%m-%Y"  
01-01-2009  
 
$ date +"%d/%m/%Y"  
01/01/2009
 
$ date +"%A,%B %d %Y"  
Thursday,January 01 2009 

 ***
以下 是 date 命令的不同的格式选项, 各选项所代表含义如下:  
%D 日期 (月/日/年)  
%d 一个月 中的第几天 (01..31)  
%m 月 份 (01..12)  
%y 年份的 后两位 (00..99)  
%a 当前语 言下星期的缩写 (Sun..Sat)  
%A 当前语 言下星期的全拼 (Sunday..Saturday)  
%b 当前语 言下月份的缩写 (Jan..Dec)  
%B 当前语 言下的月份的全称 (January..December)  
%H 24 小 时制小时 (00..23)  
%I 12 小 时制小时 (01..12)  
%Y 年份 (1970…)

+++ 
1.1.4 显 示过去的日期和时间 

如下方法可以 用来显示过去的日期和时间: 
$ date --date='3 seconds ago'  
Thu Jan 1 08:27:00 PST 2009  
 
$ date --date="1 day ago"  
Wed Dec 31 08:27:13 PST 2008  
 
$ date --date="1 days ago"    
Wed Dec 31 08:27:18 PST 2008  
 
$ date --date="1 month ago"  
Mon Dec 1 08:27:23 PST 2008  
 
$ date --date="1 year ago"  
Tue Jan 1 08:27:28 PST 2008  
 
$ date --date="yesterday"  
Wed Dec 31 08:27:34 PST 2008  
 
$ date --date="10 months 2 day ago"  
Thu Feb 28 08:27:41 PST 2008

+ ++
1.1.5 显 示未来的日期和时间 
如下的方法可 以用来展示未来的日期和时间: 
$ date  
Thu Jan 1 08:30:07 PST 2009  
 
$ date --date='3 seconds'  
Thu Jan 1 08:30:12 PST 2009  
 
$ date --date='4 hours'  
Thu Jan 1 12:30:17 PST 2009  
 
$ date --date='tomorrow'  
Fri Jan 2 08:30:25 PST 2009  
 
$ date --date="1 day"  
Fri Jan 2 08:30:31 PST 2009  
 
$ date --date="1 days"  
Fri Jan 2 08:30:38 PST 2009  
 
$ date --date="2 days"  
Sat Jan 3 08:30:43 PST 2009  
 
$ date --date='1 month'  
Sun Feb 1 08:30:48 PST 2009  
 
$ date --date='1 week'  
Thu Jan 8 08:30:53 PST 2009  
 
$ date --date="2 months"  
Sun Mar 1 08:30:58 PST 2009  
 
$ date --date="2 years"  
Sat Jan 1 08:31:03 PST 2011  
 
$ date --date="next day"  
Fri Jan 2 08:31:10 PST 2009 
 
$ date --date="-1 days ago"  
Fri Jan 2 08:31:15 PST 2009
 
$ date --date="this Wednesday"  
Wed Jan 7 00:00:00 PST 2009 

+++
[tao@localhost test]$ echo $`date +%Y%m%d_%H%M%S`
$20100504_160303



[tao@localhost test]$ echo `date +%Y%m%d_%H%M%S`
20100504_160317
[tao@localhost test]$ echo `date +%y%m%d_%H%M%S`
100504_160342
[tao@localhost test]$ echo `date +%y%m%d_%h%m%s`
100504_ 5月051272960233
[tao@localhost test]$ echo `date +%y%m%d_%H%M%s`
100504_16041272960287
[tao@localhost test]$ echo `date +%y%m%d_%H%M%S`
100504_160453
[tao@localhost test]$ echo `date +%Y%M%D_%H%M%S`
20100505/04/10_160507
[tao@localhost test]$ echo `date +%Y%y%d_%H%M%S`
20101004_160518
[tao@localhost test]$ 

阅读(1709) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-06-20 14:44:24

给楼主补充一下: 1.获取或前或后year,month,day,hour,minute或second的时间 $> date -d "-10second" +%Y%m%d" "%H":"%M":"%S #字符串时间 $> date -d "-10second" +%s #时间戳 解释: -: (减号) 获取此刻之前多少second的时间,可将second替换为: year,month,day,hour,minute获取想要的时间 +: (加号) 获取此刻之后多少second的时间,可将second替换为: year,month,day,hour,minute获取想要的时间 $>date -d "-20year+2month+10day-5hour-6minute+1second" #综合滴 2.获取指定日志的时间戳: $> date -d "2010-06-20 14:30:00" +%s