Come trovare un file e verificare se esiste con Powershell o Netwrix Auditor
Netwrix Auditor for Windows File Servers
- Esegui Netwrix Auditor → Vai a Rapporti → Apri Analisi del Comportamento Utente e Punti Ciechi → Vai a Divulgazione delle Informazioni → Seleziona Nomi File che Contengono Dati Sensibili → Clicca Visualizza.
- Specificare i seguenti filtri e parametri:
- Percorso UNC dell'oggetto — Specificare il percorso per la condivisione dei file
- Parole non consentite — Specificare la stringa che si desidera cercare nei nomi dei file
- Clicca View Report.
Per salvare il rapporto, clicca sul pulsante Export → Seleziona un formato, come PDF → Clicca su Save as → Scegli la posizione desiderata.
Scopri di più su Netwrix Auditor for Windows File Servers
Native Auditing
- Apri l'ISE di PowerShell.
- Esegui uno script come il seguente, che restituirà tutti i file nella cartella Contabilità il cui nome file include la stringa “payroll”:
$filename = '*payroll*.*'#you can use wildcards here for name and extension
$searchinfolder = '\\pdc\Shared\Accounting*'
Get-ChildItem -Path $searchinfolder -Filter $filename -Recurse | %{$_.FullName}
I risultati mostreranno tutti i file corrispondenti.
Una volta che hai un elenco di file che potrebbero contenere dati sensibili, potresti volerli spostare in una posizione sicura. Tuttavia, il tuo script di elaborazione si interromperà con un errore se il percorso del file non è valido, quindi prima di eseguirlo, dovresti prima verificare l'esistenza del file o della cartella. I seguenti comandi PowerShell ti saranno d'aiuto:
- Utilizzando Get-Item per verificare se un file esiste — Puoi usare il cmdlet Get-Item in PowerShell per trovare un file per nome. Se il percorso dell'elemento specificato non esiste, lo script genererà un errore. Di seguito è riportato uno script PowerShell che controlla se il file "Payroll 2022 - 2023.xlsx" esiste utilizzando il cmdlet Get-Item. Se il file esiste, lo script fornisce i dettagli del file; in caso contrario, verrà visualizzato un messaggio che indica che il file non esiste.
$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."
}
- Utilizzando Get-ChildItem per verificare se un file esiste — Il cmdlet Get-ChildItem è generalmente utilizzato per recuperare un elenco di elementi in una posizione specificata, ma può anche essere usato per controllare l'esistenza di un file specifico. Lo script sottostante tenta di recuperare il file "Payment_2021.rtf". Se il file esiste, lo script restituirà i dettagli del file e un messaggio di successo; in caso contrario, non verrà restituito alcun output da Get-ChildItem e il cmdlet write host visualizzerà il messaggio "Il file non esiste."
$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."
}
- Utilizzando Test-Path per verificare se un file esiste — Puoi usare il cmdlet Test-Path per controllare se un file o una cartella specifici esistono. Restituisce True se il file o la cartella esistono e False se non esistono. Ad esempio, per verificare se il file “Payroll 2022 – 2023” esiste, esegui lo script seguente:
Test-Path-Path'C:\Shared\Accounting\Payroll 2022 - 2023.xlsx'
Per determinare se ci sono file nella cartella C:\Shared\Accounting\ con estensione .xlsx, eseguire il seguente cmdlet Test-Path:
Test-Path-Path"C:\Shared\Accounting\*"-Include*.xlsx
Puoi anche usare Test-Path per verificare se un percorso è un file o una directory. Aggiungi il ‑PathType con "leaf" come valore, e il cmdlet restituirà "true" se il percorso è un file.
Test-path -Path "C:\Temp\Temp*" -pathtype leaf
Per convalidare il percorso di rete di una cartella condivisa su un computer remoto, utilizzare questo cmdlet:
Test-Path -Path "\\FileServer\Backup"
Trova i tuoi file sensibili - e ottieni anche dettagli critici su di essi
Per mantenere la sicurezza e la conformità, i professionisti IT devono cercare regolarmente file che potrebbero contenere dati sensibili e spostarli in una posizione sicura. È possibile trovare e spostare file manualmente utilizzando Windows Explorer, ma questo metodo richiede molto tempo quindi è utile principalmente quando è necessario proteggere un singolo file. Per controllare più file in modo efficiente, è possibile utilizzare PowerShell. Tuttavia, uno script PowerShell per spostare i file terminerà con un errore se il percorso non è valido, quindi prima di eseguirlo, è necessario controllare meticolosamente l'esistenza dei file e delle cartelle, come mostrato negli esempi sopra.
Invece di spendere tutto quel tempo a scrivere ed eseguire script, non preferiresti semplicemente aprire un report predefinito che verifica se i tuoi dati sensibili sono conservati solo nei luoghi appropriati? Prova Netwrix Auditor for Windows File Servers. Non è solo più facile — otterrai anche molte più informazioni. Oltre al percorso dell'oggetto, vedrai i dettagli della proprietà del file, i permessi di accesso degli utenti e l'attività intorno al file.
Condividi su