Za one koji redovno pregledavaju log datoteke, tj. regularnih sistem administratora, nekad je zgodno samostalno smanjiti log datoteku, po količini kakva nama odgovara. (skripta /etc/cron.daily/logrotate obavi posao smanjivanja log datoteke svaki dan, ipak, nekad nam odgovara reducirati postojeći zapis) U dodatku je linux skripta koja uzima kao parametar datoteku koju želimo smanjiti. Nazovimo skriptu smanji_log.sh, kopiramo je u /usr/bin/, dodamo prava izvršenja naredbom
$ sudo chmod +x smanji_log.shSkripta smanjuje odabranu datoteku tako da ostane zadnjih 30 redova. Pozivamo skriptu:
$ sudo smanji_log.sh /var/mail/rootSkripta prvo računa ukupan broj redova odabrane datoteku, zatim briše naredbom sed datoteke tako da ostane zadnjih 30 (ili koliko vec zelimo ostaviti) redova. Evo sadrzaja skripte:
#!/bin/bash # skripta za smanjivanje logova # treba dodati naziv file-a kao parametar, skripta ga čita kao $1 broj_linija="$(wc -l $1 | tr -s " " | cut -d" " -f 1)" smanjen_broj=$(($broj_linija-30)) sed -i ${smanjen_broj}' ,$ !d' $1