导航:首页 > 文件类型 > linux日志切割成多个文件

linux日志切割成多个文件

发布时间:2022-05-24 00:02:10

Ⅰ 如何将linux文件分割为几个

Linux中分割文件用split命令,这个命令可以将一个文件分割成指定大小的多个文件,split命令的用法是:专
split -b 分割属的大小 需要分割的文件名 分割后文件的前导文字
这里解释一下,-b参数表示按照文件大小单位来进行分割(split命令还有一个-l参数,是根据文本文件的行数来进行分割,这个-b参数是根据大小来分割的),-b参数后面跟的是分割的依据——文件大小,文件大小的单位可以是b、k、m,比如300m。“分割后文件的前导文字”是干嘛的呢,其实是在分割后的文件名前面加上一个前缀。下面是一个例子,就假设需要分割的文件是/root/bigfile:
split -b 50m /root/bigfile chunk
这条命令产生的分割文件可能是:chunkaa、chunkab、chunkac,看到前导文字的作用了吧。
那么如何将分割后的文件再合并起来呢,还是接着上面的那个例子,用下面这条命令就可以了(先用cd /root切换到/root目录):
cat chunk* >> bigfile

Ⅱ linux服务器怎么做日志分割

这个脚本是在LNMP论坛看到的,你可以试试
脚本如下:
#!/bin/bash#function:cut nginx log files for lnmp v0.5 and v0.6#author: http://lnmp.org #设置你的日志存放的目录log_files_path="/home/wwwlogs/"#日志以年/月的目录形式存放log_files_dir=${log_files_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")#设置需要进行日志分割的日志文件名称,多个以空格隔开log_files_name=(access www.abc3210.com)#设置nginx的安装路径nginx_sbin="/usr/local/nginx/sbin/nginx"#Set how long you want to savesave_days=30 #############################################Please do not modify the following script #############################################mkdir -p $log_files_dir log_files_num=${#log_files_name[@]} #cut nginx log filesfor((i=0;i<$log_files_num;i++));domv ${log_files_path}${log_files_name[i]}.log ${log_files_dir}/${log_files_name[i]}_$(date -d "yesterday" +"%Y%m%d").logdone #delete 30 days ago nginx log filesfind $log_files_path -mtime +$save_days -exec rm -rf {} \;
$nginx_sbin -s reload
把上面的保存为.sh文件,然后给上可执行权限,再配合Linux的计划任务,完美拉~~~

Ⅲ linux 如何将一个大文件分成几个小文件

1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。

Ⅳ Linux下Nginx如何切割访问日志

在进行编写脚本之前,先进行以下假设:
日志文件是:/usr/local/nginx/logs/access.log
nginx主进程id保存在文件:/usr/local/nginx/logs/nginx.pid
切割后备份文件目录:/usr/local/nginx/logs/bak/
切割详细步骤,请参阅下面操作:
1、创建文件cut_access_log.sh:
vim /.bin/cut_access_log.sh vim /.bin/cut_access_log.sh
2、输入文件cut_access_log.sh内容
#! /bin/bash
org_path="/usr/local/nginx/logs/"
dest_path="/usr/local/nginx/logs/bak/"
if [ ! -d "$dest_path" ]; then
mkdir "$dest_path"fimv ${org_path}access.log ${dest_path}access$(date +%Y%m%d).log
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
3、保存cut_access_log.sh之后,赋可执行权限
chmod +x /.bin/cut_access_log.sh
4、编写crontab文件:vim /.cron5、输入crontab文件内容,并保持
59 23 * * * /bin/bash /.bin/cut_access_log.sh
6、添加到crontab中

Ⅳ linux文件拆分命令

Linux中分割文件用split命令,这个命令可以将一个文件分割成指定大小的多个文件,split命令的用法是:
split -b 分割的大小 需要分割的文件名 分割后文件的前导文字
这里解释一下,-b参数表示按照文件大小单位来进行分割(split命令还有一个-l参数,是根据文本文件的行数来进行分割,这个-b参数是根据大小来分割的),-b参数后面跟的是分割的依据——文件大小,文件大小的单位可以是b、k、m,比如300m。“分割后文件的前导文字”是干嘛的呢,其实是在分割后的文件名前面加上一个前缀。下面是一个例子,就假设需要分割的文件是/root/bigfile:
split -b 50m /root/bigfile chunk
这条命令产生的分割文件可能是:chunkaa、chunkab、chunkac,看到前导文字的作用了吧。
那么如何将分割后的文件再合并起来呢,还是接着上面的那个例子,用下面这条命令就可以了(先用cd /root切换到/root目录):
cat chunk* >> bigfile

Ⅵ linux分割文件test.txt分别储存两个文件里

摘要 您好,linux下文件分割可以通过split命令来实现,可以指定按行数分割和安大小分割两种模式。Linux下文件合并可以通过cat命令来实现,非常简单。

Ⅶ linux 怎么把tomcat日志按日期分割

如果是手工分隔的话,可以使用sed或awk进行

Ⅷ linux下nginx的error.log怎么分割

实际上你要做的是对nginx的日志进行切分。不知道我理解的对不?

如果是对nginx的日志进行切分的话,可以采用如下操作:

(1)cdlogs&&mverror.logerror.log.suffix#suffix可以设置为一个时间戳
(2)./sbin/nginx-sreload#重新生成error.log文件,新的日志写到改文件中。

解释:

在执行了(1)之后,之前写到error.log中的日志还是会写到error.log.suffix文件中。因为,文件的inode没有变化(可以使用stat命令查看)。

在执行了(2)之后,由于nginx在重启的过程中会重新生成error.log,因此,新的日志就不再写入到error.log.suffix,而是写入到新的文件error.log。从而实现了在不丢失日志,不中断服务的情况下实现nginx的日志切分。


对于上述命令,可以写到一个sh脚本中,并且配置成crontab定时任务去定时切割。

注意,重启nginx一定要是用nginx -s reload选项。

Ⅸ 求日志切割脚本 linux下的

如果是apache日志的话,apache配置文件中支持按小时或者是按天分割
如果是单纯的分割文件。方法很多 下面这个脚本是我以前写的一个,可以指定大小对文件进行分割,只要略加修改,估计就能实现你要的功能。
#!/bin/bash
if [ $# -ne 2 ]; then
echo 'Usage: split file size(in MB)'
echo "Uselike: $0 file 1M"
exit
fi
file=$1
size=$2
let size=$2*1024*1024
if [ ! -f $file ]; then
echo "$file doesn't exist"
exit
fi
#TODO: test if $size is a valid integer
filesize=`/bin/ls -l $file | awk '{print $5}'`
echo filesize: $filesize
let pieces=$filesize/$size
let remain=$filesize-$pieces*$size
if [ $remain -gt 0 ]; then
let pieces=$pieces+1
fi
echo pieces: $pieces
i=0
while [ $i -lt $pieces ];
do
echo split: $file.$i:
dd if=$file of=$file.$i bs=$size count=1 skip=$i
let i=$i+1
done

Ⅹ linux下使用split命令分割文件且文件号从001开始

1、Linux里切割大文件的命令如下:

split[OPTION][INPUT[PREFIX]]

选项如下:

-a :指定后缀长度

-b:每个文件多少字节

-d:使用数字后缀而不是字母

-l:指定每个文件的行数


2、比如我想让后缀长度为 2,即 -a 2。用数字后缀 -d。每个文件 10M,即 -b 10m。命令可以设计如下:

split-a2-d-b10m/var/lib/mysql/general.lognowamagic


会在 /root 文件夹下生成下面的切割文件:

nowamagic00
nowamagic01
nowamagic02
nowamagic03
nowamagic04
nowamagic05
nowamagic06
nowamagic07
nowamagic08
nowamagic09
阅读全文

与linux日志切割成多个文件相关的资料

热点内容
大上海电影国语版免费 浏览:564
日本大胸电视剧 浏览:310
电影抢先看网站有哪些 浏览:15
大数据专业和消防专业哪个好学 浏览:23
ebay的app叫什么 浏览:814
unfold3d展uv教程 浏览:293
长城涉密机怎么u盘导入文件 浏览:703
昌都设计师怎么创建一个人的网站 浏览:349
360检测网站漏洞 浏览:839
打印机文件在哪里打 浏览:508
初创公司开发app需要请哪些程序员 浏览:635
win10照片打开到文件夹位置吗 浏览:425
zipfilejava压缩文件 浏览:973
韩国理伦片中文 浏览:919
午夜影院最新网址 浏览:610
高教教学视频数据库是哪个 浏览:956
word脱壳 浏览:207
寻医问药好的app有哪些 浏览:588
现代家主训诫文 浏览:491
徐雅精彩合集韩国电影 浏览:673

友情链接