使用 powershell 的 grep 过滤文本
使用 powershell 的 grep 过滤文本
有个log文件,大小在4M左右,要求找出里面耗时超过100s 的记录。首先想到了强大的 grep ,那么就搞起。
先在网上找一下资料,这篇文章,有几种方式:
第一种:
Get-content somefile.txt|findstr "someregexp"
Get-content可以换成cat,Powershell已经给他们做了个别名,可真是体谅sheller。
这种方法算是commandline和Powershell混合,因为findstr是命令行工具,并不是Powershell的cmdlet。
第二种:
cat somefile.txt | where { $ -match "some_regexp"}
纯种Powershell实现了,利用了where过滤
第三种:
Select-String "some_regexp" somefile.txt
直接用Select-string的实现。
经过测试,最后写出的 powershell 命令如下:
cat .\log.log|where {$_ -match "\d{3,}\.\d{2,}s"} >>result.log
用了 where 这个, 这个能使用正则, findstr 命令不行。里面的正则匹配字符串 "\d{3,}.\d{2,}s" 也很简单了,"3个数字.2个数字以上s "的意思。
最后: 过滤出来的结果放入 result.log
17:05:14,884 ltcappserver.node1@ltcappserver http-0.0.0.0-8888-Processor7 DEBUG StrategyActionHelper: - getStrategyInvoiceMap finished ... Consumed time:191.028s
17:05:14,889 ltcappserver.node1@ltcappserver http-0.0.0.0-8888-Processor4 DEBUG StrategyActionHelper: - getStrategyInvoiceMap finished ... Consumed time:191.04s
17:07:19,112 ltcappserver.node1@ltcappserver http-0.0.0.0-8888-Processor7 DEBUG StrategyActionHelper: - setListStrategyAttributes finished ... Consumed time:379.082s
17:07:20,106 ltcappserver.node1@ltcappserver http-0.0.0.0-8888-Processor4 DEBUG StrategyActionHelper: - setListStrategyAttributes finished ... Consumed time:381.021s
17:07:37,449 ltcappserver.node1@ltcappserver http-0.0.0.0-8888-Processor4 DEBUG StrategySearchAction: - setListStrategyAttributes finished ... Consumed time:398.364s
17:25:26,773 ltcappserver.node1@ltcappserver http-0.0.0.0-8888-Processor4 DEBUG cl: - build table data in getClientContractElement finished ... Consumed time:1064.296s
17:25:27,328 ltcappserver.node1@ltcappserver http-0.0.0.0-8888-Processor4 DEBUG cl: - getClientContractElement finished ... Consumed time:1064.858s
17:25:27,328 ltcappserver.node1@ltcappserver http-0.0.0.0-8888-Processor4 DEBUG cl: - buildGTReport finished ... Consumed time:1064.87s Free memory: 176198
转载于:https://www.cnblogs.com/myfjd/p/4076256.html
使用 powershell 的 grep 过滤文本相关推荐
- 文本三剑客——grep过滤
文本三剑客:awk(截取).grep(过滤).sed(替换) 目录 1.grep的基本使用命令 2.grep使用正则表达式 2.1 正则的定义 2.2 通配符 1.grep的基本使用命令 grep:过 ...
- 利用grep进行文本处理
利用grep进行文本处理 背景 相关命令 思路 过程 1.首先用grep过滤出数据 2.拆完了肯定是要匹配下数据量是否能对 3.发现数据对应不上 背景 需要将一份百万的数据按照一定的规格(开头以地市字 ...
- linux命令grep如何使用,Linux下如何使用grep搜索文本
Linux下如何使用grep搜索文本 2018-11-30 一.什么是grep grep是一种文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. grep是几个单词的缩写,g(globa ...
- linux之使用grep搜索文本
linux之使用grep搜索文本 -- Page 79 在文件夹中查找匹配内容,并显示行号: grep -r -n "要查找的内容" 目录名 在文件夹中统计包含匹配内容的行号: g ...
- [20170828]grep过滤技巧.txt
[20170828]grep过滤技巧.txt --//经常使用grep过滤显示信息. # ps -ef |grep oraagent oracle 13416 1 0 2016 ...
- linux中的grep 过滤查找及“|”管道符、gzip/gunzip 压缩、zip/unzip 压缩
1.7.3 grep 过滤查找及"|"管道符 管道符,"|",表示将前一个命令的处理结果输出传递给后面的命令处理 grep 选项 查找内容 源文件 选项 功能 ...
- java 双斜杠变单斜杠_java 过滤文本特殊字符 以及单斜杠替换成双斜杠 | 学步园...
在读取mysql数据库时,数据库中的文件路径是 由于其中包含单斜杠,我们在写入到另外的表中时,总是被莫名其妙的截断.即使将该字段的类型设置成longtext 都不行 于是,我们在读取之后使用如下方法. ...
- linux grep过滤命令
grep过滤命令 grep 单个过滤 logcat grep ABC grep -E 多个条件过滤 logcat grep -E "A|B|C" file.txt 满足任意条件(A ...
- python过滤文本中的emoji表情
python过滤文本中的emoji表情 最近在处理文本内容的时候发现很多文本会有特色表情,由于占位较多,想着能过滤掉就好,也不影响文本内容含义,并且对后续做语义分析也有帮助. 网上搜了下,总体还是通过 ...
最新文章
- 中方控股的Arm合资公司开始运营,还要在国内IPO
- XML文档DOM、SAX、STAX解析方式
- 用户不见了_屋面瓦/外墙板再也看不见螺丝打胶了
- 牛客题霸 [进制转换] C++题解/答案
- 计算机操作系统(9):深入理解B/S与C/S架构
- 回拨系统服务器,CISCO接入服务器回拨功能的实现
- 如何在Mac上管理辅助功能键盘的选项?
- P5018 对称二叉树
- java版spring cloud+spring boot+redis社交电子商务平台-docker-feign配置(五)
- Docker本地镜像
- 云宏武汉大学国际软件学院桌面云
- 苹果自带浏览器显示无法连接服务器,为什么苹果自带浏览器无法连接到服务器怎么解决...
- oracle 更改归档位置,oracle更改归档路径
- 计算机基本组成及功能
- (在ObjectARX中使用MFC)
- RDKit入门教程(2)——利用RDKit获取分子指纹
- 年金、净现值NPV、IRR、现值PV、终值FV、EAR等常见概念
- 【Python】爬虫-Xpath
- Excel 2010 SQL应用064 ISNULL函数
- mysql like %keyword%不走索引替代方法--转[足球带我奔跑]
热门文章
- tempdb(转载)
- 在线黑客帝国文字效果生成工具
- JavaScript 获取当前时间戳的三种方式
- FFmpeg Android 学习(一):Android 如何调用 FFMPEG 编辑音视频
- PHP Excel导入数据到MySQL数据库
- bzoj2588: Spoj 10628. Count on a tree 主席树
- FTP服务学习笔记之基于MySQL+PAM的vsftpd虚拟用户
- Xceed WinForm数据表格控件Xceed Grid For .NET详细介绍
- Wine QQ2012 笔记
- 正确的CentOS系统配置