需要以下方案的shell脚本

时间:2015-05-27 03:33:59

标签: shell scripting

我在目录/ home / user /中有多个日志文件,模式为x.log,y.log,z.log: 文件内容是:

error

pass

fail 

executed

not executed

Summary:
test 1 

test 2 

test 3

Finished in 2682 min 43.9 sec.

done

completed

我希望从多个日志文件中输出新的单个文件:

Summary:

test 1 

test 2 

test 3

Finished in 2682 min 43.9 sec.

Summary:

test 1 

test 2 

test 3

Finished in 2682 min 43.9 sec.

Summary:

test 1 

test 2 

test 3

Finished in 2682 min 43.9 sec.

你能用shell脚本帮我解决吗?

1 个答案:

答案 0 :(得分:1)

您可以使用awk

awk '/Summary/ {run=1} run==1 {print} /Finished/ {run=0}' *.log > log.agr

这将获取以.log结尾的每个文件的内容,当它找到包含Summary的行时开始写入log.agr,然后在包含Finished的行后跳过行。它将通过所有*.log文件的全部内容重复这一点。