Diventa Autore per CoreTech | Scopri di più





VB Script per la rotazione dei file di log

23/04/13 CoreTech Blog

Spesso si ha il problema di dover far ruotare i file di LOG generati da una o più applicazioni. Su sistemi Windows è possibile utilizzare uno script in VBS per risolvere questa esigenza. Di seguito un esempio di come sia possibile rinominare un file di LOG con la data corrente e cancellare i file più vecchi di una determinata data.


On Error Resume Next

‘Directory in cui sono salvati i file di log

strLogDir = “C:\Users\Claudio\Desktop\test”

‘Nome di default dei file di log generati dall’applicazione

strLogName = “filename”

‘Estensione dei file di log generati dall’applicazione

strLogExt = “.log”

‘Numero dei giorni che si vuole conservare un file di log

intCutoff = 1

‘———————————–

strTargetDate = ShortDate(Date – intCutoff)

‘Comando di rinomina del file che aggiunge data e ora di rinomina

Set objFSO = CreateObject(“Scripting.FileSystemObject”)

strNewName = strLogName & “-” & ShortDate(Now) & “-” & ShortTime(Now) & strLogExt

objFSO.MoveFile strLogDir & “\” & strLogName & strLogExt, strLogDir & “\” & strNewName

 

‘Comando di cancellazione dei file con estensione .log più vecchi di quanto definito nella variabile intCutoff

Set objWMIService = GetObject(“winmgmts:\\.\root\cimv2”)

Set colFileList = objWMIService.ExecQuery _

(“ASSOCIATORS OF {Win32_Directory.Name=” & Chr(39) & strLogDir & Chr(39) & “} Where ” _ & “ResultClass = CIM_DataFile”)

For Each objFile In colFileList

strDate = Left(objFile.LastModified, 8)

If strDate < strTargetDate Then

If objFile.Extension = “log” Then

objFile.Delete

End If

End If

Next

Function ShortDate(dtmDate)

strDay = Day(dtmDate)

If Len(strDay) < 2 Then

strDay = “0” & strDay

End If

strMonth = Month(dtmDate)

If Len(strMonth) < 2

Then strMonth = “0” & strMonth

End If strYear = Year(dtmDate)

ShortDate = strYear & strMonth & strDay

End Function

Function ShortTime(dtmTime)

strHour = Hour(dtmTime)

If Len(strHour) < 2 Then

strHour = “0” & strHour

End If

strMinute = Minute(dtmTime)

If Len(strMinute) < 2 Then

strMinute = “0” & strMinute

End If

strSecond = Second(dtmTime)

If Len(strSecond) < 2 Then

strSecond = “0” & strSecond

End If

ShortTime = strHour & strMinute & strSecond

End Function

Di seguito l’immagine di come viene rinominato un file, salvato dalla vostra applicazione, utilizzando questo script:

filename log

Viengono aggiunti al nome del file salvato dal vostro applicativo (filename) anno mese giorno e ora minuti e secondi.

Questo script può essere utilizzato per qualsiasi tipo di file con qualsiasi estensione, basta parametrizzare correttamente le variabili nello script.


Knowledge Base su Linux

Ubuntu - come fare list di file e cartelle - lsUbuntu - come fare il cambio di directory - cdUbuntu - come visualizzare il contenuto di un file - catUbuntu - Gestione Files e Logs con Tail e HeadUbuntu - Come utilizzare il comando apt-getUbuntu - Utilizzo del comando dfUbuntu - installare WebminUbuntu - File di Log di SistemaUbuntu - Come ricercare file - findUbuntu - Vedere elenco processi attivi -psUbuntu - Come avviare un processo al boot - rc.localUbuntu - Come vedere se un pacchetto è installato - dpkgUbuntu - Copiare un file da percorso locale verso un altro host Linux - scpUbuntu - Riavviare il servizio di reteUbuntu - Fare upgrade del kernel linux ubuntuUbuntu - Spostare o rinominare i file con il comando - MVUbuntu - Gestione filesystem - mountUbuntu - Riconfigurare lingua tastiera da riga di comando - dpkg-reconfigureUbuntu - cambiare il nome host da riga di comando - hostnamectlUbuntu - Pulire Cancellare file di logUbuntu - Come verificare la versione installataCentOS - Installazione programmi - yumCome creare un MOTD personalizzato al'acceso di ubuntu/debianEstendere un disco in LVMrinominaRiavviare il servizio Apache su server LinuxLinux – comandi base e script bashLinux – Introduzione e concetti generaliIntroduzione a Ubuntu ServerUbuntu Server come AD domain controllerUbuntu Server 18.04Amministrare Ubuntu Server da web con Webmin e CockpitLinux Red Hat: l’Open Source EWnterprisePenetration testing con Kali LinuxErrore spazio disco pieno durante l’aggiornamento di Linux

Video Premium su Linux

Corsi Premium - Linux