Eu montei um roteiro Powershell muito básico para guiá-lo na direção certa.
Function logrotate (
$activefile = "C:\activelog.text",
$dest = "C:\",$activefile_size,
$newfilename = "arotatedlog.text")
{
$activefile_size = get-item $activefile| Select-Object Name, CreationTime, @{Name="Kbytes";Expression={$_.Length / 1Kb}}
if ($activefile_size.Kbytes -gt 150)
{Write-Host "File size equal or greater than 150KB"
$dest = "$dest + $newfilename"
Get-Content $activefile | Set-Content -Path $dest
}
logrotate
- Obtém o arquivo ativelog
- Coberta o tamanho do arquivo ativelog para kilobytes
- Verifica se o arquivo activelog é de 150kb
- Se o arquivo tiver 150kb, pega o conteúdo do arquivo e o configura para novo arquivo.
- Se o arquivo NÃO for 150kb, o script será finalizado.
Coisas para procurar
Arquivo duplicado existem exceções é a principal coisa que você deve procurar. Dependendo do limite do arquivo, talvez você queira adicionar um número incremental ao nome do arquivo NEW.
Espero que isso ajude.