15 Dec 2014
作用:自定义输出日期字符串。
语法:date [参数] +格式选项
参数:
-d 不是输出当前日期时间,而是根据后面的字符串条件输出相对时间-s 修改日期时间用法举例:
## 输出日期常用格式 # y和Y格式上的区别 date +%Y-%m-%d 2014-12-16 date +%y-%m-%d 14-12-16 # %F相当于%Y-%m-%d date +%F 2014-12-16 # w代表周几,W代表第几个周 date +%w 2 date +%W 50 # e代表每个月的第几天 date +%e 18 ## 输出时间常用格式 # %T相当于%H:%M:%S date +%T 16:25:47 date +%H:%M:%S 16:27:06 # %s生成一个时间戳,从1970年01月01日凌晨到现在的秒数, date +%s 1418718459 ## 注意区别%s与%S,%S是second ## 输出相对日期时间举例 # 两月前与两月后 date -d "+2month" Mon Feb 16 16:37:40 SGT 2015 date -d "-2month" Thu Oct 16 16:37:58 SGT 2014 # 一天前与一天后 date -d "-1day" Mon Dec 15 16:38:09 SGT 2014 date -d "+1day" Wed Dec 17 16:38:17 SGT 2014 # 一小时前与一小时后 date -d "+1hour" Tue Dec 16 17:38:27 SGT 2014 date -d "-1hour" Tue Dec 16 15:38:35 SGT 2014 ## 相对时间输出格式date -d "+n单位" ## 单位除了上面这些还有year、min和sec ## "-s"修改时间,"ntpdate"通过网络时间服务器同步时间 # 指定日期修改,注意时间会变凌晨 date -s 2014-12-16 Tue Dec 16 00:00:00 SGT 2014 # 指定时间修改 date -s 16:53:40 Tue Dec 16 16:53:40 SGT 2014 # 通过windows时间服务器同步在线时间 yum install ntpdate -y ntpdate time.windows.com 16 Dec 17:06:11 ntpdate[3555]: step time server 65.55.56.206 offset 128.311639 sec
## "cal"输出日历 # 默认输出本月日历 cal December 2014 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 # 默认输出本年度全年度日历,等同于cal 2014 cal -y 2014 January February March Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 3 4 1 1 5 6 7 8 9 10 11 2 3 4 5 6 7 8 2 3 4 5 6 7 8 12 13 14 15 16 17 18 9 10 11 12 13 14 15 9 10 11 12 13 14 15 19 20 21 22 23 24 25 16 17 18 19 20 21 22 16 17 18 19 20 21 22 26 27 28 29 30 31 23 24 25 26 27 28 23 24 25 26 27 28 29 30 31 April May June Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 3 4 5 1 2 3 1 2 3 4 5 6 7 6 7 8 9 10 11 12 4 5 6 7 8 9 10 8 9 10 11 12 13 14 13 14 15 16 17 18 19 11 12 13 14 15 16 17 15 16 17 18 19 20 21 20 21 22 23 24 25 26 18 19 20 21 22 23 24 22 23 24 25 26 27 28 27 28 29 30 25 26 27 28 29 30 31 29 30 July August September Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 3 4 5 1 2 1 2 3 4 5 6 6 7 8 9 10 11 12 3 4 5 6 7 8 9 7 8 9 10 11 12 13 13 14 15 16 17 18 19 10 11 12 13 14 15 16 14 15 16 17 18 19 20 20 21 22 23 24 25 26 17 18 19 20 21 22 23 21 22 23 24 25 26 27 27 28 29 30 31 24 25 26 27 28 29 30 28 29 30 31 October November December Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa 1 2 3 4 1 1 2 3 4 5 6 5 6 7 8 9 10 11 2 3 4 5 6 7 8 7 8 9 10 11 12 13 12 13 14 15 16 17 18 9 10 11 12 13 14 15 14 15 16 17 18 19 20 19 20 21 22 23 24 25 16 17 18 19 20 21 22 21 22 23 24 25 26 27 26 27 28 29 30 31 23 24 25 26 27 28 29 28 29 30 31 30 # 可指定输出年份 cal 2015 ...... 创建名称包含日期时间的日志文件 # 创建datename.sh vim ./datename.sh ======================================================== #!/bin/bash # Programe # This programe could auto touch file and name it by the date # Created by Zhao Peiwu 16/12/2014 name=`date +%Y%m%d` filename="$name".log touch $filename ======================================================== # 执行与查看结果 bash datename.sh ls 20141216.log cacu.sh datename.sh hw.sh para.sh