shell常用日期时间格式
发布时间:2020-04-09 17:52:20
作者:ynkulusi
写脚本经常会用到的一些时间格式
%% a literal %
%a locale's abbreviated weekday name (e.g., Sun)
%A locale's full weekday name (e.g., Sunday)
%b locale's abbreviated month name (e.g., Jan)
%B locale's full month name (e.g., January)
%c locale's date and time (e.g., Thu Mar 3 23:05:25 2005)
%C century; like %Y, except omit last two digits (e.g., 20)
%d day of month (e.g., 01)
%D date; same as %m/%d/%y
%e day of month, space padded; same as %_d
%F full date; same as %Y-%m-%d
%g last two digits of year of ISO week number (see %G)
%G year of ISO week number (see %V); normally useful only with %V
%h same as %b
%H hour (00..23)
%I hour (01..12)
%j day of year (001..366)
%k hour, space padded ( 0..23); same as %_H
%l hour, space padded ( 1..12); same as %_I
%m month (01..12)
%M minute (00..59)
%n a newline
%N nanoseconds (000000000..999999999)
%p locale's equivalent of either AM or PM; blank if not known
%P like %p, but lower case
%r locale's 12-hour clock time (e.g., 11:11:04 PM)
%R 24-hour hour and minute; same as %H:%M
%s seconds since 1970-01-01 00:00:00 UTC
%S second (00..60)
%t a tab
%T time; same as %H:%M:%S
%u day of week (1..7); 1 is Monday
%U week number of year, with Sunday as first day of week (00..53)
%V ISO week number, with Monday as first day of week (01..53)
%w day of week (0..6); 0 is Sunday
%W week number of year, with Monday as first day of week (00..53)
%x locale's date representation (e.g., 12/31/99)
%X locale's time representation (e.g., 23:13:48)
%y last two digits of year (00..99)
%Y year
%z +hhmm numeric time zone (e.g., -0400)
%:z +hh:mm numeric time zone (e.g., -04:00)
%::z +hh:mm:ss numeric time zone (e.g., -04:00:00)
%:::z numeric time zone with : to necessary precision (e.g., -04, +05:30)
%Z alphabetic time zone abbreviation (e.g., EDT)
date +%F' '%T
date +%D
04/09/20
date +%F
2020-04-09
date +%x
04/09/2020
date +%T
17:12:04
date +%X
05:13:38 PM
date +%r
05:17:17 PM
date +%R
17:17
date +%w
4
date +%u
4
date +%W
14
date +%U
14
date +%j
100
cal -j
date +%s
1586423885
date -d @1570885555 +%F-%T
2019-10-12-21:05:55
date -d 'yesterday'
Wed Apr 8 17:22:03 CST 2020
date -d 'yesterday' +%Y%m%d
20200408
date -d '5 days ago 3 hours 20minutes' +%Y%m%d-%H:%M:%S
20200404-20:43:42
date -d '5 days ago 3 hours 20minutes ago' +%Y%m%d-%H:%M:%S #没有ago,默认就是以后
20200404-20:03:59
date -d '5days ago 3hours ago 20minutes ago' +%Y%m%d-%H:%M:%S #数字与时间单位之间可以不要空格
20200404-14:04:27
date -d '1 year ago 2 weeks tomorrow 3 hours ago 4 minutes 5 seconds ago' #一年前2周后明天3小时前4分后5秒前
Wed Apr 24 14:42:45 CST 2019
date +%Y%m01 #本月第一天
date -d "`date +%Y%m01` last day" +%Y%m%d #上个月最后一天,1个单位前可以用last,多个用 n单位 ago
date -d "`date +%Y%m01` last month" +%Y%m%d #上个月第一天
date -d "`date +%Y%m01` last year last month last day" +%Y%m%d #去年上个月1号的前一天(去年上上个月最后一天)
FORMAT controls the output. Interpreted sequences are:%% a literal %
%a locale's abbreviated weekday name (e.g., Sun)
%A locale's full weekday name (e.g., Sunday)
%b locale's abbreviated month name (e.g., Jan)
%B locale's full month name (e.g., January)
%c locale's date and time (e.g., Thu Mar 3 23:05:25 2005)
%C century; like %Y, except omit last two digits (e.g., 20)
%d day of month (e.g., 01)
%D date; same as %m/%d/%y
%e day of month, space padded; same as %_d
%F full date; same as %Y-%m-%d
%g last two digits of year of ISO week number (see %G)
%G year of ISO week number (see %V); normally useful only with %V
%h same as %b
%H hour (00..23)
%I hour (01..12)
%j day of year (001..366)
%k hour, space padded ( 0..23); same as %_H
%l hour, space padded ( 1..12); same as %_I
%m month (01..12)
%M minute (00..59)
%n a newline
%N nanoseconds (000000000..999999999)
%p locale's equivalent of either AM or PM; blank if not known
%P like %p, but lower case
%r locale's 12-hour clock time (e.g., 11:11:04 PM)
%R 24-hour hour and minute; same as %H:%M
%s seconds since 1970-01-01 00:00:00 UTC
%S second (00..60)
%t a tab
%T time; same as %H:%M:%S
%u day of week (1..7); 1 is Monday
%U week number of year, with Sunday as first day of week (00..53)
%V ISO week number, with Monday as first day of week (01..53)
%w day of week (0..6); 0 is Sunday
%W week number of year, with Monday as first day of week (00..53)
%x locale's date representation (e.g., 12/31/99)
%X locale's time representation (e.g., 23:13:48)
%y last two digits of year (00..99)
%Y year
%z +hhmm numeric time zone (e.g., -0400)
%:z +hh:mm numeric time zone (e.g., -04:00)
%::z +hh:mm:ss numeric time zone (e.g., -04:00:00)
%:::z numeric time zone with : to necessary precision (e.g., -04, +05:30)
%Z alphabetic time zone abbreviation (e.g., EDT)
分类:bash
评论数:0
阅读数:916