none
Loggen von Ordnern RRS feed

  • Frage

  • Hallo zusammen

     

    Ich bin wieder auf ein neues Problem gestossen.
    Ich muss loggen, wann ein Verzeichnis gelöscht wird oder erstellt.

    zBsp.: Ich lösche in C:\ den Ordner "Test" und dann soll es in eine Log-Datei(txt) einen Eintrag darüber erfassen.

    wie man Dateien loggt, habe ich bereits eine Methode, jedoch funktioniert die mit Ordner nicht:

    $folder = 'C:\'
    $fsw = New-Object IO.FileSystemWatcher $folder -Property @{
     IncludeSubdirectories = $true              # <-- set this according to your requirements
     NotifyFilter = [IO.NotifyFilters]'FileName, CreationTime, LastWrite'
    }
    
    $onDeleted = Register-ObjectEvent $fsw Deleted -SourceIdentifier FileDeleted -Action {
     $path = $Event.SourceEventArgs.FullPath
     $name = $Event.SourceEventArgs.Name
     $changeType = $Event.SourceEventArgs.ChangeType
     $timeStamp = $Event.TimeGenerated
     $tmp = "$path;$timeStamp"
     $tmp | Add-Content C:\Log\Log_Deleted.txt
    }
    
    $onCreated = Register-ObjectEvent -InputObject $fsw Created -SourceIdentifier FileCreated -Action {
     $path = $Event.SourceEventArgs.FullPath
     $name = $Event.SourceEventArgs.Name
     $changeType = $Event.SourceEventArgs.ChangeType
     $timeStamp = $Event.TimeGenerated
     $tmp = "$path;$timeStamp"
     $tmp | Add-Content C:\Log\Log_Created.txt
    }
    

    Gibt es einen Weg, wie ich Ordner loggen kann?

    Vielen Dank im Vorraus


    • Bearbeitet Powerturtle Freitag, 9. Dezember 2011 10:05
    Freitag, 9. Dezember 2011 09:38

Antworten

  • war einfacher, im NotifyFilter fehlt DirectoryName....

    NotifyFilter = [IO.NotifyFilters]'DirectoryName,FileName, CreationTime, LastWrite'
    }

    • Als Antwort vorgeschlagen KloinerFeigling83 Samstag, 10. Dezember 2011 14:37
    • Als Antwort markiert Powerturtle Montag, 12. Dezember 2011 11:25
    Samstag, 10. Dezember 2011 14:36

Alle Antworten

  • hast du mal versucht anstatt einen anderen Sourceidentifier zu nehmen? anstatt FileDeleted zb DeletedEvent

    http://social.technet.microsoft.com/Forums/en/winserverpowershell/thread/da13455a-974b-449e-a7a5-207b5fc9bd65

     

     

    Samstag, 10. Dezember 2011 13:35
  • war einfacher, im NotifyFilter fehlt DirectoryName....

    NotifyFilter = [IO.NotifyFilters]'DirectoryName,FileName, CreationTime, LastWrite'
    }

    • Als Antwort vorgeschlagen KloinerFeigling83 Samstag, 10. Dezember 2011 14:37
    • Als Antwort markiert Powerturtle Montag, 12. Dezember 2011 11:25
    Samstag, 10. Dezember 2011 14:36
  • Vielen Dank das hat es gebracht! :)
    Montag, 12. Dezember 2011 11:25