使用 sed、awk、tr 解析 logstash 索引数据
parse logstash index data with sed, awk, tr
如何使用 sed/awk/tr 解析以下文本行:
green open logstash-2016.02.19 5 1 2052356 0 2.1gb 1gb
green open logstash-2016.03.06 5 1 2045820 0 2.1gb 1gb
green open logstash-2016.01.10 5 1 1944711 0 1.8gb 940.4mb
green open logstash-2016.01.02 5 1 1505350 0 1.4gb 738.4mb
并删除 'green open' 和 'logstash-2016.foo' 之间的 space。
然后去掉右边的所有内容,除了右边的两列信息。例如 '2.1gb 1gb' 并且在这两个之间只有一个 space?
谢谢
像这样使用 awk:
awk '{print , , }' logstash.txt
- 假设您的文件名称为
logstash.txt
, ,
select 列数 3,8,9
可以做到:
awk '{line=; for(i=0;i<NF+1;i++){if(i==8 || i==9){line=line" "$i;}}print line;}' test.txt
如何使用 sed/awk/tr 解析以下文本行:
green open logstash-2016.02.19 5 1 2052356 0 2.1gb 1gb
green open logstash-2016.03.06 5 1 2045820 0 2.1gb 1gb
green open logstash-2016.01.10 5 1 1944711 0 1.8gb 940.4mb
green open logstash-2016.01.02 5 1 1505350 0 1.4gb 738.4mb
并删除 'green open' 和 'logstash-2016.foo' 之间的 space。
然后去掉右边的所有内容,除了右边的两列信息。例如 '2.1gb 1gb' 并且在这两个之间只有一个 space?
谢谢
像这样使用 awk:
awk '{print , , }' logstash.txt
- 假设您的文件名称为
logstash.txt
, ,
select 列数 3,8,9
可以做到:
awk '{line=; for(i=0;i<NF+1;i++){if(i==8 || i==9){line=line" "$i;}}print line;}' test.txt