Tcl - ajout suppression de logs

Contenu du snippet

Bonjour tout le monde , alors voila j'ai recuperé une tcl pour ajouter et supprimer de logs
Pour utiliser le script: Il faut éxécuter le script Tcl dans le fichier conf (source scripts/nom-de-fichier.tcl)

Source / Exemple :


set tim [clock format [clock seconds] -format "%H:%M"]
set date [clock format [clock seconds] -format "%d_%m_%y"]
set salon "#monsalon"

	bind pub - !add pub:!add
	bind pub - !log pub:!list
    bind pub -|- !del pubdel

proc pub:!add { nick uhost handle channel arg } {
global fichierbug tim date salon
if {$channel == $salon} {
set log [open "./log.db" "a+"]
puts $log "$arg  2(ajouter par $nick)"
putquick "notice $nick : ok : 6ajouter avec 2succes!"
close $log
}
 }
   	putlog "\0032L\0034o\0035g\0036.T\0037C\00310L\003 (\0031320/04/2009\003) \00312p\0031a\0035r \0031A\00312t\0031o\0032k\003"

proc pubdel {nick host hand chan arg} {
global salon
if {$channel == $salon} {

    set file "./log.db"
            set theris [file exists [file join ./ temp_log.db]]
            if {$theris != 0} {
                eval "exec rm -f ./temp_log.db"
            }
            set tempfile [open [file join ./ temp_log.db] "w+"]
            set file [open $file "r+"]
            set ln 1
            while {[eof $file] == 0} {
                set line [gets $file]
                set msg $line
                set dele 0
                foreach prm $arg {
                    if {$ln == $prm} {
                        set dele 1
                    }
                }
                if {$dele == 0} {
                    if {$msg != ""} {
                        puts $tempfile "$msg"
                    }
                }
                set dele 0
                set ln [expr {$ln} +1]
            }
            putquick "NOTICE $nick :\00312 9-=-=-=-=-=- 12N° $arg : 13a été supprimé avec succes \00312 
9-=-=-=-=-=-"
            close $tempfile
            close $file
            eval "exec mv -f ./temp_log.db $file"
            return 1
            }
	}

 proc pub:!list { nick uhost hand channel arg } {
 global date tim salon
if {$channel == $salon} {
set fichierlog [open "./log.db" "r"]
set contenu [ read -nonewline $fichierlog]
set numero 1
foreach ligne [split $contenu "\n"] {
putquick "notice $nick :4 $numero.13 $ligne"
 incr numero 1
}
putquick "notice $nick :0,10Fin 2de la liste."
}
  }

Conclusion :


commande a utiliser :
!add
!del
!log
tu peux maudifier les commandes dans la source
Atok,

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.