Come monitorare la presenza di nuovi file in una cartella?

Di seguito è riportato un confronto tra le procedure di Windows PowerShell e ADAudit Plus per il monitoraggio di una cartella in cerca di nuovi file:

Windows PowerShell

Procedura per monitorare la presenza di nuovi file in una cartella tramite PowerShell:

  • Una classe .NET chiamata FileSystemWatcher può essere usata per monitorare la presenza di nuovi file in una cartella. Può essere creata tramite un cmdlet New-Object e si trova nello spazio dei nomi System.IO.
    $watcher = New-Object System.IO.FileSystemWatcher
  • Applicare al watcher i parametri necessari assegnando dei valori alle opportune proprietà oggetto, secondo le proprie esigenze.

    Esempio: Se la cartella ha delle sottocartelle che devono essere monitorate, assegnare la proprietà IncludeSubdirectories.

    $watcher.IncludeSubdirectories = $true
  • Usando la proprietà Path, specificare la cartella che da monitorare. Inoltre, impostare la proprietà EnableRaisingEvents al valore $true per generare eventi quando si verifica una delle condizioni.
    $watcher.Path = 'C:\FolderThat NeedsMonitoring'
    $watcher.EnableRaisingEvents = $true
  • Dopo aver impostato la proprietà EnableRaisingEvents, deve essere definita un’azione in caso di verifica di un evento. Tale azione può essere definita creando uno ScriptBlock in PowerShell. Utilizzare la variabile incorporata [$event]. Ogni volta che si verifica un evento, questa variabile registrerà le relative informazioni, come il percorso del file e il tipo di evento verificatosi.
    $action =
        {
        $path = $event.SourceEventArgs.FullPath
        $changetype = $event.SourceEventArgs.ChangeType
        Write-Host "$path was $changetype at $(get-date)"
        }
  • Il prossimo passaggio è la registrazione dell'evento. Usare il cmdlet Register-ObjectEvent e fornirlo al oggetto watcher precedentemente creato e al tipo di azione da monitorare. In questo caso, si tratta della creazione di nuovi file.
    PS > Register-ObjectEvent $watcher 'Created' -Action $action
    monitor-file-changes-in-windows-with-powershell-2
  • Tutti gli eventi esistenti per cui è stata attivata una sottoscrizione possono essere visualizzati usando il cmdlet Get-EventSubscriber.
    PS> Get-EventSubscriber

ADAudit Plus

Per monitorare la presenza di nuovi file in una cartella,

  • Accedere a ADAudit Plus → Andare alla scheda Controllo file → Entrare in Report di controllo file → Navigare fino a Report sui file creati.
    monitor-file-changes-in-windows-with-powershell-1
  • I dettagli che è possibile trovare in questo report sono:

    • Nome di cartella/file creati
    • In quale server sono stati creati
    • Chi ha creato tali file/cartelle
    • Quando sono stati creati
    • Proprietà degli oggetti tra cui ACL
    • Macchina client da cui sono stati creati tali file/cartelle
  • Selezionare Esporta come per esportare il report in uno qualsiasi dei formati preferiti (CSV, PDF, HTML, CSVDE e XLSX).
» Inizia i 30 giorni di prova gratuiti
  • Script PowerShell e semplificazione del controllo delle modifiche AD con ADAudit Plus.
  •  
  • Facendo clic su “Inizia subito la tua prova gratuita” accetti l’elaborazione dei tuoi dati personali in base all’informativa sulla privacy.
  •  
  • Grazie per lo scaricamento!
  • Il tuo scaricamento dovrebbe iniziare automaticamente tra 15 secondi. Altrimenti, fai clic qui per scaricare manualmente.