我想从Nginx访问日志的日期字段中删除括号。我尝试过
sed -E 's#\[(\d+)#\1#' access.log | head
但是它仍然可以打印
172.31.20.98 - - [30/Sep/2018:20:01:01 +0000] "GET ...
我最初尝试更改日期格式,但这没用。
sed -E 's#(\d+)/(\w+)/(\d+)#\3-\2-\1#' access.log
答案 0 :(得分:0)
如果您要删除%U
和[
,则可以分两个步骤进行操作,每个元字符都以反斜杠转义:
]
答案 1 :(得分:0)
我最终使用的是旧的Perl。
perl -pe 's#\[(\d+)/(\w+)/(\d+):(\d+):(\d+):(\d+) \+0000\]#"$3-$2-$1 $4:$5:$6"#' < access.log
172.31.20.98 - - "2018-Sep-30 20:01:01" ...