Awk con for
From Linuzz
| Line 1: | Line 1: | ||
#! /bin/sh | #! /bin/sh | ||
| - | echo "===================================================================" >> / | + | echo "===================================================================" >> /var/log/autoclean.log |
| + | echo "Data Eliminazione-----------> " >> /var/log/autoclean.log | ||
date >> /var/log/autoclean.log | date >> /var/log/autoclean.log | ||
umask 177 | umask 177 | ||
apt-get autoclean > pippo.txt | apt-get autoclean > pippo.txt | ||
let a=`cat pippo.txt | wc -l`-2 | let a=`cat pippo.txt | wc -l`-2 | ||
| - | if [ $a == 0 ] | + | if [ $a == 0 ] |
| - | then | + | then |
| - | echo "Non è stato eliminato alcun pacchetto " >> /var/log/autoclean.log | + | echo "Non è stato eliminato alcun pacchetto " >> /var/log/autoclean.log |
else | else | ||
| - | tail -n $a pippo.txt | awk '/^\\del/ { | + | tail -n $a pippo.txt | awk '/^\\del/ {for (i=2;i<=NF;i++) printf $i " ";print(LF)}' >> /var/log/autoclean.log |
| - | echo "===================================================================" >> / | + | fi |
| - | #viene effettuato il controllo sui file per vedere se esistono e se sono | + | echo "===================================================================" >> /var/log/autoclean.log |
| + | #viene effettuato il controllo sui file per vedere se esistono e se sono eseguibili | ||
| + | test -x /var/log/autoclean.log || exit 0 | ||
test -x /sbin/syslogd || exit 0 | test -x /sbin/syslogd || exit 0 | ||
| - | + | #viene effettuato il controllo sul file per vedere se esiste e se è regolare | |
| - | + | test -f /usr/share/sysklogd/dummy || exit 0 | |
#se si presenta un errore viene mandato il segnale di uscita | #se si presenta un errore viene mandato il segnale di uscita | ||
set -e | set -e | ||
| - | + | cd /var/log | |
| - | cd /var/log | + | |
LOG=/var/log/autoclean.log | LOG=/var/log/autoclean.log | ||
#fa il salvataggio dei log per quattro cicli | #fa il salvataggio dei log per quattro cicli | ||
if [ -s $LOG ]; then | if [ -s $LOG ]; then | ||
| - | + | savelog -g adm -m 640 -u root -c 4 $LOG>/dev/null | |
fi | fi | ||
| - | |||
#Viene inviato al demone il comando restart | #Viene inviato al demone il comando restart | ||
/etc/init.d/sysklogd reload-or-restart > /dev/null | /etc/init.d/sysklogd reload-or-restart > /dev/null | ||
Revision as of 11:01, 20 June 2007
- ! /bin/sh
echo "===================================================================" >> /var/log/autoclean.log echo "Data Eliminazione-----------> " >> /var/log/autoclean.log date >> /var/log/autoclean.log umask 177 apt-get autoclean > pippo.txt let a=`cat pippo.txt | wc -l`-2 if [ $a == 0 ] then
echo "Non è stato eliminato alcun pacchetto " >> /var/log/autoclean.log
else
tail -n $a pippo.txt | awk '/^\\del/ {for (i=2;i<=NF;i++) printf $i " ";print(LF)}' >> /var/log/autoclean.log
fi echo "===================================================================" >> /var/log/autoclean.log
- viene effettuato il controllo sui file per vedere se esistono e se sono eseguibili
test -x /var/log/autoclean.log || exit 0 test -x /sbin/syslogd || exit 0
- viene effettuato il controllo sul file per vedere se esiste e se è regolare
test -f /usr/share/sysklogd/dummy || exit 0
- se si presenta un errore viene mandato il segnale di uscita
set -e cd /var/log LOG=/var/log/autoclean.log
- fa il salvataggio dei log per quattro cicli
if [ -s $LOG ]; then savelog -g adm -m 640 -u root -c 4 $LOG>/dev/null fi
- Viene inviato al demone il comando restart
/etc/init.d/sysklogd reload-or-restart > /dev/null
