Para localizar o termo específico “contrato de honorários” dentro de arquivos no Windows, o PowerShell é a ferramenta mais indicada. Diferente da busca comum do Explorador de Arquivos, o PowerShell pode “ler” o conteúdo de arquivos de texto, scripts e documentos de forma muito mais precisa.
Abaixo, apresento um script que busca o termo em pastas do usuário, ignorando erros de sistema e focando em extensões comuns de documentos.
🚀 Script PowerShell: Localização de Termos em Documentos
Este script percorre a pasta de Documentos (ou qualquer outra que você definir) e lista o caminho do arquivo e a linha onde o termo foi encontrado.
PowerShell
# 1. Defina o caminho onde a busca deve começar (ex: C:\Users\SeuUsuario\Documents)
$caminhoBusca = "$home\Documents"
# 2. Defina o termo de busca
$termo = "contrato de honorários"
Write-Host "Buscando arquivos contendo '$termo' em $caminhoBusca..." -ForegroundColor Cyan
# 3. Executa a busca
# Filtramos extensões comuns para ganhar velocidade e evitar erros em arquivos binários
Get-ChildItem -Path $caminhoBusca -Recurse -Include *.txt, *.docx, *.doc, *.pdf, *.rtf -ErrorAction SilentlyContinue |
Select-String -Pattern $termo |
Select-Object Path, LineNumber, Line |
Format-Table -AutoSize
🔍 Explicação dos Comandos
| Comando | Função |
Get-ChildItem -Recurse | Lista todos os arquivos da pasta e de todas as subpastas. |
-Include *.txt, *.docx... | Restringe a busca a arquivos de texto e documentos (evita ler arquivos de sistema pesados). |
-ErrorAction SilentlyContinue | Impede que o script pare caso encontre um arquivo que você não tem permissão para abrir. |
Select-String | O comando “mágico” que abre o arquivo e procura o texto dentro dele. |
Format-Table | Organiza o resultado em uma tabela limpa com o Caminho, Número da Linha e o Trecho do texto. |
⚠️ Notas Importantes sobre Formatos
- Arquivos PDF e Word (.docx): O comando
Select-Stringfunciona perfeitamente com arquivos de texto simples (.txt, .log, .csv). Para arquivos compactados como.docxou.pdf, o Windows geralmente exige que o Serviço de Indexação esteja ativo para que o PowerShell consiga ler o conteúdo interno sem bibliotecas extras. - Velocidade: Se você tiver milhares de arquivos, a busca pode demorar alguns minutos. Recomenda-se apontar o
$caminhoBuscapara a pasta específica onde você guarda seus documentos em vez de buscar no discoC:\inteiro.
💡 Dica: Alternativa via Explorador de Arquivos (Sem Script)
Se você preferir não usar scripts, o Windows tem um filtro oculto para buscar dentro dos arquivos:
- Abra a pasta onde deseja buscar.
- Na barra de busca (canto superior direito), digite:
conteúdo:"contrato de honorários" - O prefixo conteúdo: força o Windows a ignorar o nome do arquivo e ler o que está escrito dentro dele.
- Como usar o cmdlet Set-PSFLoggingProvider no PowerShell para aprimorar o monitoramento de logs.
- Como personalizar esquemas de cores no prompt de comando do Windows
- Descubra como implementar o altruísmo em um ambiente Windows.
- Como resolver o erro 0x8007f026 STATUS_WININET_LOAD_FAILED no Windows 10 e 11
- Como criar e gerenciar uma conta da Microsoft no Windows
