Procurando arquivos no Windows Server 2003 correspondendo a uma de várias palavras

1

Eu preciso pesquisar em um disco com muitos arquivos para qualquer documento (PDF, DOC, DOCX, XLS, etc.) que tenha um nome de arquivo correspondente a uma ou mais centenas de palavras.

A ferramenta de pesquisa integrada é lenta e não funciona bem com muitas palavras de pesquisa. Alguém sabe de uma ferramenta / programa que pode ajudar?

    
por Petter Brodin 19.12.2012 / 13:14

1 resposta

0

Baseado na sugestão do mnmnc eu fiz um script do Powershell que parece fazer o truque. É lento, mas me dá os resultados que eu quero.

$phrases = ("*Wildcard*,*separated*,*array*,*of*,*search*,*terms*")

Remove-Item .\results.txt

foreach ($p in $phrases){
    $results = @(Get-ChildItem -Recurse -Path 'E:\myPath\' -Filter "$m" | where{$_.Extension -match "doc|docx|pdf|txt|xls|xlsx"} | Select-Object Fullname)

    if($results.count -ne 0){
        $m + "      " + $results.length >> ".\results.txt"
        $results >> ".\results.txt"
        "

        " >> ".\results.txt"
    }
}

Isso percorre as frases e vê se há arquivos da extensão permitida que correspondam à frase de pesquisa. Os resultados são colocados em uma matriz e, se a matriz tiver algum elemento, a frase, o número de resultados e os nomes dos arquivos serão impressos em um arquivo de texto.

Esse laço foreach é provavelmente muito caro e eu não ficaria surpreso se houvesse uma maneira melhor de fazê-lo, mas eu estou apenas deixando que isso corra em segundo plano, então eu não me importo de demorar um pouco.

    
por 20.12.2012 / 11:59