Pessoal, boa tarde.
Eu preciso de um Script que verificasse para mim qual foi a ultima alteração/exclusão de um determinado arquivo.
Então depois de pesquisar bastante, eu criei o seguinte script:
##########SCRIPT QUE VERIFICA STATUS DO ARQUIVO################
$folder = '\\TOTVSfix\ERP11\fast' # Coloca o caminho aqui que vai ser monitorado
$filter = '*.*' # Aqui pode ser colocado um filtro de qual tipo de arquivo que tem que ser procurado
$fsw = New-Object IO.FileSystemWatcher $folder, $filter -Property @{IncludeSubdirectories = $true;NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite'}
Register-ObjectEvent $fsw Created -SourceIdentifier FileCreated -Action {
$name = $Event.SourceEventArgs.Name
$changeType = $Event.SourceEventArgs.ChangeType
$timeStamp = $Event.TimeGenerated
Write-Host "O Arquivo '$name' foi $changeType em $timeStamp" -fore green
Out-File -FilePath \\TOTVSfix\ERP11\log\INFOFAST.txt -Append -InputObject "O Arquivo '$name' foi $changeType em $timeStamp"}
Register-ObjectEvent $fsw Deleted -SourceIdentifier FileDeleted -Action {
$name = $Event.SourceEventArgs.Name
$changeType = $Event.SourceEventArgs.ChangeType
$timeStamp = $Event.TimeGenerated
Write-Host "O Arquivo '$name' foi $changeType em $timeStamp" -fore red
Out-File -FilePath \\TOTVSfix\ERP11\log\INFOFAST.txt -Append -InputObject "The file '$name' was $changeType at $timeStamp"}
Register-ObjectEvent $fsw Changed -SourceIdentifier FileChanged -Action {
$name = $Event.SourceEventArgs.Name
$changeType = $Event.SourceEventArgs.ChangeType
$timeStamp = $Event.TimeGenerated
Write-Host "O arquivo '$name' foi $changeType em $timeStamp" -fore white
Ele está funcionando OK, ele está cumprindo o objetivo dele.
Porém eu queria que depois que ele fizesse a verificação dos arquivos, ele me mandasse um e-mail com o informativo.
Eu até consegui fazer ele mandar o e-mail, mas para isso eu tive que fazer um novo script. Eu não consegui fazer isso no mesmo script.
Outra questão é que ele sempre salva os logs dentro de um mesmo .txt e eu queria que ele sepasse os logs por dia, e não deixasse tudo junto.
Alguém sabe como fazer isso?