awk时间函数

来源:互联网 发布:无人机飞控系统编程 编辑:程序博客网 时间:2024/05/21 20:28

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函数的返回值格式一致。

0 0
原创粉丝点击