awk 的时间函数

awk提供了两个函数来获取时间和格式化时间戳:systime和strftime。
systime函数 systime函数将返回自1970 年1月l日以来经过的时间(按秒计算)。

格式

systime ( )

范例

$ awk  'BEGIN{now=systime();print now}'
939515282

说明:systime函数的返回值被赋给一个用户自定义的变量:now。这个值等于从1970年1月1日以来所累计的总时间(单位为秒)。
strftime函数 strftime函数使用C库中的strftime函数对时间进行格式化。格式形式可以为%T %D等(参见下表)。时间戳的格式和systime函数返回值所采用的格式一样,如果不使用时间戳,则以当前的时间为默认时间。

日期格式 定义
%a 简写的星期名(如Sun)
%A 完整的星期名(如Sunday)
%b 简写的月名(如Oct)
%B 完整的月名(如October)
%c 本地的日期和时间(如Sun Oct 17 15:26:46 2014)
%d 用十进制表示的月份中的某一夭( 如17)
%D 采用10/17/14 形式表示的日期
%e 月份中的某一夭,如果只有一位数字,用空格填充份
%H 用十进制表示的24 小时制的小时数以( 如15)
%I 用十进制表示的12 小时制的小时数( 如03)
%j 用十进制表示的从当年1 月1 日以来的天数。(如290)
%m 用十进制表示的月数( 如10)
%M 用十进制表示的分钟数( 如26)
%p 采用12 小时制表示的AM/PM 表示法(如PM)
%S 用十进制表示的秒数(如26)
%U 用十进制表示的一年中的周数(星期日作为一周的开始)(如42)
%w 用十进制表示的星期数(如星期日为0)
%W 用十进制表示的一年中的周数(星期一作为一周的开始)(如41)
%x 本地日期(如 10/17/14)
%X 本地时间(如15:26:26)
%y 用十进制表示的年份(采用两位十进制表示,如14)
%Y 带世纪的年份(如2004)
%Z 时间区(如PDT)
%% 一个百分号字符标记(%)

格式

systime ( [format specification ]  [ , timestamp ] )

范例

$ awk  'BEGIN{now=strftime("%D",systime()); print now)'
10 /09 /04
$ awk  'BEGIN {now=strftime("%T"); print now)'
17: 58:03
$ awk  'BEGIN{now=strftime("%m/%d%y"); print now}'

说明:strftime函数通过一个参数所给出的格式来设置时间和日期的形式。如果以systime作为第2个参数,或者不带第2个参数,将使用本地的当前时间。如果带了第2个参数,则它必须与systime函数的返回值格式一致。

参考资料:http://www.linuxawk.com/jiaocheng/353.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值