elk收集java日志 需要把其中一段
%highlight(%-5level) %tid %magenta([%thread]) %cyan(%logger{50}) - %msg%n
替换成
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
直接使用
for i in `ls /data/module/core/`;do sed -i s'/%highlight(%-5level) %tid %magenta([%thread]) %cyan(%logger{50}) - %msg%n/[%thread] %-5level %tid %logger{50} - %msg%n/g' /data/module/core/$i/conf/logback.xml ;done
发现并没有成功替换.
一个个字符串替换 发现[] 这个符号需要转义
正确命令如下
for i in `ls /data/module/core/`;do sed -i s'/%highlight(%-5level) %tid %magenta(\[%thread\]) %cyan(%logger{50}) - %msg%n/\[%thread\] %-5level %tid %logger{50} - %msg%n/g' /data/module/core/$i/conf/logback.xml ;done