#!/bin/bash
LOG_DIR=/var/log
ROOT_UID=0
LINES=50
E_XCD=66
E_NOTROOT=67
E_WRONGARGS=65
if [ "$UID" -ne "$ROOT_UID" ]
then
echo "Must be root to run this script."
exit $E_NOTROOT
fi
#echo "$1"
#if [ -z "$1" ] #-z str : str为null,长度为0 -n str : str不为空
#then
#lines=$LINES
#echo "没有参数,默认保留50行"
#else
#lines=$1
#echo "带有参数 保留行数为$lines"
#fi
case "$1" in
"" ) lines=50;
echo "没有参数,默认保留50行";;
*[!0-9]*) echo "Usage: `basename $0` failed-to-cleanup 参数错误!" >log 2>&1;
exit $E_WRONGARGS;;
* ) lines=$1;
echo "带有参数 保留行数为$lines";;
esac
#cd $LOG_DIR
#if [ `pwd` != "$LOG_DIR" ] # if[ "$PWD" != "$LOG_DIR" ]
#then
#echo "Can't change to $LOG_DIR."
#exit $E_XCD
#fi
cd $LOG_DIR ||{
echo "Can't change to $LOG_DIR."
exit $E_XCD
}
#tail -$lines messages > mesg.temp # cat /dev/null > messages
#mv mesg.temp messages
#cat /dev/null > wtmp # ': > wtmp' 和 '> wtmp'具有相同的作用
echo "Logs cleaned up."
exit 0
LOG_DIR=/var/log
ROOT_UID=0
LINES=50
E_XCD=66
E_NOTROOT=67
E_WRONGARGS=65
if [ "$UID" -ne "$ROOT_UID" ]
then
echo "Must be root to run this script."
exit $E_NOTROOT
fi
#echo "$1"
#if [ -z "$1" ] #-z str : str为null,长度为0 -n str : str不为空
#then
#lines=$LINES
#echo "没有参数,默认保留50行"
#else
#lines=$1
#echo "带有参数 保留行数为$lines"
#fi
case "$1" in
"" ) lines=50;
echo "没有参数,默认保留50行";;
*[!0-9]*) echo "Usage: `basename $0` failed-to-cleanup 参数错误!" >log 2>&1;
exit $E_WRONGARGS;;
* ) lines=$1;
echo "带有参数 保留行数为$lines";;
esac
#cd $LOG_DIR
#if [ `pwd` != "$LOG_DIR" ] # if[ "$PWD" != "$LOG_DIR" ]
#then
#echo "Can't change to $LOG_DIR."
#exit $E_XCD
#fi
cd $LOG_DIR ||{
echo "Can't change to $LOG_DIR."
exit $E_XCD
}
#tail -$lines messages > mesg.temp # cat /dev/null > messages
#mv mesg.temp messages
#cat /dev/null > wtmp # ': > wtmp' 和 '> wtmp'具有相同的作用
echo "Logs cleaned up."
exit 0