首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Powershell:搜索文件内容并将结果写入文本文件

Powershell:搜索文件内容并将结果写入文本文件
EN

Stack Overflow用户
提问于 2012-07-19 10:32:04
回答 1查看 3.9K关注 0票数 1

我是powershell的新手,所以我不知道从哪里开始。我想要一个脚本,可以搜索所有(pdf,word,excell,powerpoint,...)特定字符串组合的文件内容。

我尝试了这个脚本,但它不起作用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function WordSearch ($sample, $staining, $sampleID, $patientID, $folder)
{
$objConnection = New-Object -com ADODB.Connection
$objRecordSet = New-Object -com ADODB.Recordset
$objConnection.Open(“Provider=Search.CollatorDSO;Extended Properties=’Application=Windows’;)
$objRecordSet.Open(SELECT System.ItemPathDisplay FROM SYSTEMINDEX WHERE ((Contains(Contents,’$sample’)) or (Contains(Contents,’$sampleID’) and Contains(Contents,’$staining’)) or (Contains(Contents,’$staining’) and Contains(Contents,’$patientID’))) AND System.ItemPathDisplay LIKE ‘$folder\%’”, $objConnection)
if ($objRecordSet.EOF -eq $false) {$objRecordSet.MoveFirst() }

while ($objRecordset.EOF -ne $true) {
$objRecordset.Fields.Item(“System.ItemPathDisplay”).Value
$objRecordset.MoveNext()
}
}

有人能帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2012-07-19 16:33:03

你应该尝试这样做,但首先要确保你在你想要开始搜索的文件夹中:(如果你试图搜索你的整个计算机,从C:\开始,但我想运行这个脚本需要相当长的时间。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$Paths = @()    
$Paths = gci . *.* -rec | where { ! $_.PSIsContainer } |? {($_.Extension -eq ".doc") -or ($_.Extension -eq ".ppt") -or ($_.Extension -eq ".pdf") -or ($_.Extension -eq ".xls")} | resolve-path

这将检索这些文件类型的所有文件路径。如果您使用的是Microsoft office 2007或更高版本,则可能需要添加对".xlsx“、".docx”或".pptx“的搜索。

然后,您可以开始在这些文件中查找您的“特定字符串组合”

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
array = @()
foreach($path in $Paths)
{$array += Select-String -Path $Path -Pattern "Search String"}

这将为您提供该字符串在这些文件中所在的所有行和路径。你得到的实际行输出可能有点失真,这是因为微软加密了他们的文件。使用$array | get-member -MemberType Property查找可以索引到的项,并使用Select-object命令将这些项提取出来。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11558933

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文