正则表达式 – 用sed剪切部分grep输出

前端之家收集整理的这篇文章主要介绍了正则表达式 – 用sed剪切部分grep输出前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要从日志文件获取值,值可能不同,需要获取它.

字符串示例:

Tests run: 1042,Failures: 0,Errors: 0,Skipped: 0

我尝试:

cat log.log | grep '^Test run:' | sed -e 's/^Test run: //'

但我得到:
    1042,失败:0,错误:0,跳过:0

我需要4个命令,结果就像

第一个命令(测试运行)

1042

第二个命令(失败)

0

第三个命令(错误)

0

第四个同志(跳过)

0

解决方法

您可以使用以下四个命令分别获取测试运行,失败,错误和跳过的值:

cat log.log | sed 's/Tests run: \([0-9]\+\).*/\1/g'
cat log.log | sed 's/.*Failures: \([0-9]\+\).*/\1/g'
cat log.log | sed 's/.*Errors: \([0-9]\+\).*/\1/g'
cat log.log | sed 's/.*Skipped: \([0-9]\+\).*/\1/g'

猜你在找的正则表达式相关文章