Como encontrar um arquivo e verificar se ele existe com Powershell ou Netwrix Auditor
Netwrix Auditor for Windows File Servers
- Execute o Netwrix Auditor → Navegue até Relatórios → Abra Análise de Comportamento do Usuário e Pontos Cegos → Vá para Divulgação de Informações → Selecione Nomes de Arquivos Contendo Dados Sensíveis → Clique em Visualizar.
- Especifique os seguintes filtros e parâmetros:
- Caminho UNC do Objeto — Especifique o caminho para o seu compartilhamento de arquivos
- Palavras Não Permitidas — Especifique a string que deseja procurar nos nomes de arquivos
- Clique em View Report.
Para salvar o relatório, clique no botão Export → Selecione um formato, como PDF → Clique em Save as → Escolha o local desejado.
Saiba mais sobre Netwrix Auditor for Windows File Servers
Auditoria Nativa
- Abra o PowerShell ISE.
- Execute um script como o seguinte, que retornará todos os arquivos na pasta Contabilidade cujo nome do arquivo inclua a string “payroll”:
$filename = '*payroll*.*'#you can use wildcards here for name and extension
$searchinfolder = '\\pdc\Shared\Accounting*'
Get-ChildItem -Path $searchinfolder -Filter $filename -Recurse | %{$_.FullName}
Os resultados mostrarão todos os arquivos correspondentes.
Uma vez que você tenha uma lista de arquivos que podem conter dados sensíveis, você pode querer movê-los para um local seguro. No entanto, seu script de processamento será encerrado com um erro se o caminho do arquivo for inválido, então, antes de executá-lo, você deve primeiro verificar a existência do arquivo ou pasta. Os seguintes comandos do PowerShell ajudarão:
- Usando Get-Item para verificar se um arquivo existe — Você pode usar o cmdlet Get-Item no PowerShell para encontrar um arquivo pelo nome. Se o caminho do item especificado não existir, o script gerará um erro. Abaixo está um script do PowerShell que verifica se o arquivo "Payroll 2022 - 2023.xlsx" existe usando o cmdlet Get-Item. Se o arquivo existir, o script fornecerá os detalhes do arquivo; se não, ele exibirá uma mensagem dizendo que o arquivo não existe.
$file="C:\Shared\Accounting\Payroll 2022 - 2023.xlsx"
if (Test-Path$file) {
$item=Get-Item$file
Write-Host"The file exists. Details:"
$item
} else {
Write-Host"The file does not exist."
}
- Usando Get-ChildItem para verificar se um arquivo existe — O cmdlet Get-ChildItem é normalmente usado para recuperar uma lista de itens em um local especificado, mas também pode ser usado para verificar a existência de um arquivo específico. O script abaixo tenta recuperar o arquivo "Payment_2021.rtf". Se o arquivo existir, o script retornará os detalhes do arquivo e uma mensagem de sucesso; caso contrário, nenhum resultado será retornado por Get-ChildItem e o cmdlet write host exibirá a mensagem "O arquivo não existe."
$file="C:\Shared\Accounting\payment_2021.rtf"
$items=Get-ChildItem$file
if ($items) {
Write-Host"The file exists."
} else {
Write-Host"The file does not exist."
}
- Usando Test-Path para verificar se um arquivo existe — Você pode usar o cmdlet Test-Path para verificar se um arquivo ou pasta específica existe. Ele retorna True se o arquivo ou pasta existir e False se não existir. Por exemplo, para verificar se o arquivo “Payroll 2022 – 2023” existe, execute o seguinte script:
Test-Path-Path'C:\Shared\Accounting\Payroll 2022 - 2023.xlsx'
Para determinar se há algum arquivo em C:\Shared\Accounting\ com a extensão .xlsx, execute o seguinte cmdlet Test-Path:
Test-Path-Path"C:\Shared\Accounting\*"-Include*.xlsx
Você também pode usar Test-Path para verificar se um caminho é um arquivo ou um diretório. Adicione o ‑PathType com “leaf” como seu valor, e o cmdlet retornará “true” se o caminho for um arquivo.
Test-path -Path "C:\Temp\Temp*" -pathtype leaf
Para validar o caminho de rede de uma pasta compartilhada em um computador remoto, use este cmdlet:
Test-Path -Path "\\FileServer\Backup"
Encontre seus arquivos sensíveis - e obtenha detalhes críticos sobre eles também
Para manter a segurança e a conformidade, os profissionais de TI precisam buscar regularmente arquivos que possam conter dados sensíveis e movê-los para um local seguro. Você pode encontrar e mover arquivos manualmente usando o Windows Explorer, mas esse método leva muito tempo, sendo útil principalmente quando você precisa proteger um único arquivo. Para verificar vários arquivos de forma mais eficiente, você pode usar o PowerShell. No entanto, um script do PowerShell para mover arquivos será encerrado com um erro se o caminho for inválido, então, antes de executá-lo, você precisa verificar meticulosamente se os arquivos e pastas existem, conforme mostrado nos exemplos acima.
Em vez de gastar todo esse tempo escrevendo e executando scripts, você não preferiria simplesmente abrir um relatório pré-construído que verifica se seus dados sensíveis estão armazenados apenas nos locais adequados? Experimente Netwrix Auditor for Windows File Servers. Não é apenas mais fácil — você também obtém muito mais informações. Além do caminho do objeto, você verá os detalhes da propriedade do arquivo, permissões de acesso do usuário e atividade em torno do arquivo.
Compartilhar em