• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >PowerShell > PowerShell实现在多个文件中检索关键字功能

PowerShell实现在多个文件中检索关键字功能

作者:junjie 字体:[增加 减小] 来源:互联网

junjie 通过本文主要向大家介绍了powershell程序文件,powershell 删除文件,powershell打开文件,powershell创建文件,powershell 下载文件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

这几天在看Powershell,感觉挺强大的,一个小任务,是用powershell实现多个文件中检索万行记录的脚本。刚开始想用用Get-Content 结合Where-Object来实现,发现检索的结果太慢,而且检索的条目显示出来后不知道来自哪个文件,这个虽然也容易实现,但是经过对多种方法的探索,我发现竟然一条强大的命令竟然可以实现所有这些需求,而且超快的。

一般用于IIS日志分析,由于主要是介绍这个PS命令的,IIS日志是从服务器端抓取的,这里仅就是测试用的一半数据。

首先进入到相应目录,查看当前目录下的文件,其中四个log文件是用来测试的。如下:

然后就用下面这条命令实现那个强大的功能:

比如要搜索关键字write,则输入write回车之后,搜索到的结果如下(仅截取部分,这里由于隐私,日志文件是俺造的,只是数据量比较大,内容纯属虚构~~):

可以将这条语句赋给一个临时变量,来查看一下在这瞬间查出了多少数据:

其实也不多,4个日志文件中瞬间查出了500条数据,其实这个看不出来,因为我造的数据量还不够大。。。

下面对这条强大的命令简单解释下:

整体其实就是使用了Select-String这个命令,具体用法参考:

http://technet.microsoft.com/zh-cn/library/dd315403.aspx

Get-ChildItem是得到当前面目录下的所有项,然后通过管道| 输入给?(就是Where-Object的别名)来筛选,及筛选当前目录下的log文件,$_代表当前对象,即前面查出的结果,-like使用了模式匹配,$(Read-Host)是从控制台读入,类似C#中的ReadLine()(相应的标准输出是Write-Host),即当用户输入一个关键字后,命令会从后向前的执行。

由于是刚入门,如有出错,大神们多多指教。

</div>

您可能想查找下面的文章:

  • Powershell 之批量获取文件大小的实现代码
  • 用PowerShell删除N天前或指定日期(前后)创建(或修改)的文件
  • PowerShell查看本机文件关联程序和默认打开程序的方法
  • PowerShell实现查询打开某个文件的默认应用程序
  • PowerShell实现批量重命名文件
  • Powershell使用OpenFileDialog打开文件示例
  • PowerShell中实现播放WAV音频文件
  • Powershell中显示隐藏文件的方法
  • PowerShell实现在多个文件中检索关键字功能
  • Powershell小技巧之从文件获取系统日志

相关文章

  • Powershell中阻止”确认提示”的方法
  • PowerShell远程安装MSI安装包、EXE可执行程序的方法
  • Windows Powershell条件表达式之条件操作符
  • Windows Powershell导出管道结果
  • Powershell小技巧之非相同域或信任域也能远程
  • PowerShell小技巧之获取TCP响应(类Telnet)
  • PowerShell小技巧之执行SOAP请求
  • PowerShell判断某天是星期几的方法
  • PowerShell小技巧之定时抓取屏幕图像
  • PowerShell中使用Get-EventLog读取、筛选系统日志的例子

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Powershell截取字符串并添加省略号的例子
    • 使用PowerShell操作Windows服务的命令小结
    • Powershell实现捕获系统内置EXE程序的异常
    • PowerShell入门教程之创建和使用配置文件实例
    • PowerShell函数中接收管道参数实例
    • PowerShell远程安装MSI安装包、EXE可执行程序的方法
    • PowerShell中的特殊变量$null介绍和创建多行注释小技巧
    • Powershell读取PFX证书并输入密码的脚本分享
    • PowerShell小技巧之从函数中返回多个值
    • 用PowerShell代替批处理吧!

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有