【shell 脚本】删除/var/log 下的日志

简介:
开始学习shell 脚本的编写了,写了一个删除日志的脚本。
root@client.example.com # more test.sh   
#!/bin/bash
# cleanup /var/log/message
LOG_DIR=/var/log
ROOT_DID=0
LINES=50
E_XCD=66
E_NOTROOT=67

if [[ "$UID" -ne "$ROOT_UID" ]]
then
 echo "Must be root to run this script."
 exit $E_NOTROOT
fi

if [ -n "$1" ]
then
    lines=$1
else
    lines=$LINES
fi

# E_WRONGARGS =65
# case "$1" in
# ""      ) lines=50;;
# *[!0-9]*) echo "Usage: `basename $0` file-to-cleanup ";;
# *       ) lines=$1;;
#  esac

#cd $LOG_DIR
#if [ "$PWD" !="$LOG_DIR" ]
# then
#    echo "Cant't change to $LOG_DIR."
#    exit $E_XCE
#fi
cd /var/log || {
    echo "Cant'change to necessary didrectory." >&2
    exit $E_XCD;
   }
tail -$lines messages > mesg.tmp
mv mesg.tmp messages
cat /dev/null > wtwp
echo "Logs cleaned up"

exit 0
"test.sh" 59L, 792C written
测试:
root@client.example.com # wc -l messages
43 messages
root@client.example.com # sh test.sh 20
Logs cleaned up
root@client.example.com # wc -l messages
20 messages
root@client.example.com # 
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
16天前
|
Java
使用Java代码打印log日志
使用Java代码打印log日志
73 1
|
17天前
|
弹性计算 Shell Perl
ecs服务器shell常用脚本练习(二)
【4月更文挑战第1天】shell代码训练(二)
102 1
|
18天前
|
Linux Shell
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
72 1
|
2天前
|
Shell
Shell脚本之流程控制语句
Shell脚本之流程控制语句
|
3天前
|
JSON 运维 监控
训练shell常用脚本练习(三)
【4月更文挑战第14天】shell代码训练(三)
13 1
|
6天前
|
存储 弹性计算 Shell
ecs服务器shell常用脚本练习(十)
【4月更文挑战第11天】shell代码训练(十)
136 0
|
6天前
|
弹性计算 Shell Go
ecs服务器shell常用脚本练习(九)
【4月更文挑战第10天】shell代码训练(八)
123 0
|
17天前
|
Shell
【shell】实时查看网卡流量脚本
【shell】实时查看网卡流量脚本
|
21天前
|
SQL 关系型数据库 MySQL
MySQL数据库,可以使用二进制日志(binary log)进行时间点恢复
对于MySQL数据库,可以使用二进制日志(binary log)进行时间点恢复。二进制日志是MySQL中记录所有数据库更改操作的日志文件。要进行时间点恢复,您需要执行以下步骤: 1. 确保MySQL配置文件中启用了二进制日志功能。在配置文件(通常是my.cnf或my.ini)中找到以下行,并确保没有被注释掉: Copy code log_bin = /path/to/binary/log/file 2. 在需要进行恢复的时间点之前创建一个数据库备份。这将作为恢复的基准。 3. 找到您要恢复到的时间点的二进制日志文件和位置。可以通过执行以下命令来查看当前的二进制日志文件和位
|
27天前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
48 0

热门文章

最新文章