当前位置:首页 » 编程软件 » linux日志脚本

linux日志脚本

发布时间: 2023-06-07 21:40:25

linux下,清除日志的脚本。帮帮忙。

#!/bin/bash
#SystemDate
date=$(date +%Y%m%d)
source_url=日志现存路径
target_url=将原日志备份的路径

cp $source_url/logname $target_url/logname_$date
cat /dev/null > $source_url/logname
原日志需要以>>方式输出到logname
例:命令>>logname&

❷ linux的日志服务器中,如何用脚本将日志按年归档进指定目录


在脚本nohup设置每天开始拷贝日志作为前一天的日志备份,然后把当前日志清空即可,代码如下:

crontab-e
//增加:
00***cp/dirname/logfile.log/bakdir/logfile.`date-dyesterday+%Y%m%d`.log;cat/dev/null>/dirname/logfile.log
//每周日凌晨1:00打包、删除文件:
01**0cd/bakdir;find./+mtime7-exectarcvflogfile.`date-dyesterday+%Y%U`.tar{};;find./-mtime91-execrm-f{};

❸ linux 清除前一天日志的脚本

Linux有正常的日志的轮替,即:把现在的日志重命名然后再产生新的日志文件,可以利用这个原理来清空当前的日志文件,而不会导致以前的日志流失!这样的话你可以设置你的日志文件为每天一轮换,则当前日志文件内的信息就是今天的日志!

vi/etc/logrotate.conf 把其中的weekly或者monthly改为dayly就行!

❹ Linux shell脚本按日期 切割pm2日志

linux shell脚本按日期 切割pm2日志 (解决定时任务pm2命令无法执行问题,原因:没有环境变量)

首先在输入命令echo $PATH 拿到当前系统环境变量

然后在/root/.pm2目录新建cutlog.sh文件(注意:第一句一定要有,设置当前shell脚本里面的环境变量,没有的话pm2命令会无法执行)

PATH=/root/.nvm/versions/node/v6.10.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

CURPATH=/root/.pm2

OUTPATH=/home/cutLogsDate

mkdir -p $OUTPATH

INPUTPATH=$CURPATH/logs

reloadProcessLogs(){

        logFilesGame="${INPUTPATH}/$1"

        yesterday=`date -d last-day '+%Y%m%d_'$2`

        logOfLastDay=$OUTPATH/$yesterday.log

        mv $logFilesGame $logOfLastDay

        touch $logFilesGame

        echo "切割$1成功"

}

reloadProcessLogs 'game-out-0.log' 'game_out'

pm2 reloadLogs设置定时任务

输入crontab -e命令编辑

0 3 * * * sh /root/.pm2/cutlog.sh

❺ linux 备份结果输出到日志脚本

给你讲一下Linux下的
先创建个嫌隐贺备份脚本的文件保存为backup.sh,然后让corn在指定时间运行就可以了

备份脚本内容:
cp -r 日志目录 要备份的目录
tar -zcvf bak$(date +%Y%m%d).tar.gz 要备份的目录 //将数据所在文件夹bak打包
呵呵,很简单,携卜复制、打包就ok了

然后就是计划任务了
修改crontab内容
#crontab -e
* * * * * /脚本所在完整路径/backup.sh
如:22 11 1 * * /home/backup.sh 就是每月的1号11点22分执行home下的backup.sh脚本
前面五个字段分别表示分钟、小时、日、月、星期几(0-6)后面的为脚本所在目录
3,重新启动crond服务
#service crond restart

如果没有安装crond服务就先装上服务再说,用service crond status可以查看该服务状态

windows的也是差不多,也是复制打包芹派的,然后就计划任务就ok了

❻ Linux 系统 shell脚本定时 清空系统日志文件

其实没有必要写shell脚本,简单一句话放在系统定时任务里就行了。
比如你的日志文件名叫a.log。路径为/tmp/a.log;
那么你可以写个定时任务,这样做:crontab -e 进入定时任务器,然后把下面这段写到里面
00 02 * * * echo " " >/tmp/a.log
然后保存退出就可以了。这段内容意思是,每天凌晨2点自动清空a.log内容。你也可以自己定义多久清一次。比如想10分钟清一次,就这么写*/10 * * * * echo " " >/tmp/a.log。具体的crontab时间定义你可以去网络查查。希望对您有用!

❼ Linux系统下nginx日志每天定时切割的脚本写法

下面是deepvps自己用的自动每天定时切割Nginx日志的`脚本,很方便很好用,推荐给大家使用。本脚本也是参考了张宴老师的文章,再次感谢张宴老师。

1、创建脚本/usr/local/nginx/sbin/cut_nginx_log.sh

vi /usr/local/nginx/sbin/cut_nginx_log.sh

输入以下内容:

#!/bin/bash

# This script run at 00:00

# The Nginx logs path

logs_path=”/home/www/logs/”

mkdir -p ${logs_path}$(date -d “yesterday” +”%Y”)/$(date -d “yesterday” +”%m”)/

mv ${logs_path}access.log ${logs_path}$(date -d “yesterday” +”%Y”)/$(date -d “yesterday” +”%m”)/access_$(date -d “yesterday” +”%Y%m%d”).log

kill -USR1 `cat /usr/local/nginx/nginx.pid`

2、设置crontab,每天凌晨00:00切割nginx访问日志

crontab -e

输入以下内容:

00 00 * * * /bin/bash /usr/local/nginx/sbin/cut_nginx_log.sh

热点内容
sql语句等于怎么写 发布:2024-05-07 18:05:46 浏览:815
我的世界电脑版第三方服务器大全 发布:2024-05-07 18:00:46 浏览:625
主服务器的ip地址 发布:2024-05-07 17:58:50 浏览:544
组服务器打电脑游戏 发布:2024-05-07 17:46:19 浏览:865
java的文件路径 发布:2024-05-07 16:55:29 浏览:293
云表服务器安装导致电脑崩溃 发布:2024-05-07 15:58:35 浏览:524
ftp是什么检测器 发布:2024-05-07 15:37:59 浏览:403
重庆电信服务器租用教学云主机 发布:2024-05-07 15:28:05 浏览:73
python声明对象 发布:2024-05-07 15:28:03 浏览:128
存储过程的应用场景 发布:2024-05-07 15:12:16 浏览:613