美文网首页
date显示格式化记录

date显示格式化记录

作者: Lee_M | 来源:发表于2017-11-28 23:24 被阅读16次

由于现系统是中文所以显示的时间格式为中文

[root@h01 test]# date
2017年 11月 28日 星期二 22:57:29 CST

由于需要匹配的日志时间显示的为英文的

[root@zabbix test]# tail -f host.access.log
28/Nov/2017:18:45:05 +0800, - 172.16.60.43, "GET / HTTP/1.1", 403, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
28/Nov/2017:18:45:06 +0800, - 172.16.60.43, "GET / HTTP/1.1", 403, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
28/Nov/2017:18:45:06 +0800, - 172.16.60.43, "GET / HTTP/1.1", 403, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
28/Nov/2017:18:45:06 +0800, - 172.16.60.43, "GET / HTTP/1.1", 403, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
28/Nov/2017:18:45:16 +0800, - 172.16.60.43, "GET / HTTP/1.1", 403, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
29/Nov/2017:05:54:59 +0800, - 172.16.60.43, "GET / HTTP/1.1", 403, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
29/Nov/2017:05:54:59 +0800, - 172.16.60.43, "GET / HTTP/1.1", 403, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
29/Nov/2017:05:55:59 +0800, - 172.16.60.43, "GET / HTTP/1.1", 403, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
29/Nov/2017:06:05:59 +0800, - 172.16.60.43, "GET / HTTP/1.1", 404, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",
29/Nov/2017:06:06:59 +0800, - 172.16.60.43, "GET / HTTP/1.1", 404, 168, "-","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0", "-",

解决办法:
1、修改系统语言为英文

#vim /etc/sysconfig/i18n
LANGUAGE=en_US.en

参考:http://blog.csdn.net/haiross/article/details/13509657
2、单独指定date显示
加LC_ALL="C" date 即可

[root@h01 default]# date
2017年 11月 28日 星期二 23:13:14 CST
[root@h01 default]# LC_ALL="C" date
Tue Nov 28 23:13:23 CST 2017

测试脚本:

#!/bin/bash
start_time=`LC_ALL="C" date -d"1 minutes ago" +"%d/%b/%Y:%H:%M:%S"`
end_time=`LC_ALL="C" date +"%d/%b/%Y:%H:%M:%S"`
log=/usr/local/nginx-1.5.6/logs/host.access.log
echo $start_time
echo $end_time
echo | awk -F',' '{print $1,$4}' $log | awk  -v start=$start_time -v end=$end_time -F ' ' 'start<=$1 && $1<=end && $3~/403|404|408|499|500|502|503/  {print $3}'

结果

[root@h01 test]# ./ngix1.sh
28/Nov/2017:23:16:59
28/Nov/2017:23:17:59
403

过滤日志时间格式与脚本日志格式一致

[root@zabbix test]# tail -f host.access.log |awk -F' ' '{print $1}'
28/Nov/2017:18:45:05
28/Nov/2017:18:45:06
28/Nov/2017:18:45:06
28/Nov/2017:18:45:06
28/Nov/2017:18:45:16
29/Nov/2017:05:54:59
29/Nov/2017:05:54:59
29/Nov/2017:05:55:59
29/Nov/2017:06:05:59
29/Nov/2017:06:06:59

附:date常用https://www.cnblogs.com/qq78292959/p/4624186.html

相关文章

  • date显示格式化记录

    由于现系统是中文所以显示的时间格式为中文 由于需要匹配的日志时间显示的为英文的 解决办法:1、修改系统语言为英文 ...

  • Linux 命令操作 (一)

    基础命令 man 4.在页面内跳转 date 显示日期格式化输出日期 date +%Y/%m/%d "...

  • MySQL时间格式化函数date_format()

    MySQL时间格式化函数date_format()用法详解 DATE_FORMAT() 函数用于以不同的格式显示日...

  • linux(4) 系统常用命令

    查看日期和时间 使用date用以查看、设置当前系统时间: 格式化显示时间: +%Y--%m--%d 如:date ...

  • js格式化日期

    /** @description 格式化日期 @param {Date|Number|String} date @...

  • 利用Angular Pipe实现时间格式化

    Typescript和Javascript的Date对象非常灵活,可以输出一些不同类型的格式化字串显示。 例如: ...

  • Ruby:时间格式化

    本文记录ruby中常用到的时间格式的相关方法 获取Date&Time组件 格式化时间和日期 输出结果 时间格式化指...

  • 常用函数列表

    日期相关函数 日期格式化DATE_FORMAT(date,format)

  • SimpleDateFormat

    SimpleDateFormat 允许格式化 (date -> text)、语法分析 (text -> date)...

  • 2020-05-19日期加1减1

    格式化日期const date = Date.prototypedate.format = function (f...

网友评论

      本文标题:date显示格式化记录

      本文链接:https://www.haomeiwen.com/subject/onsybxtx.html