linux下用csplit命令分割文件的方法示例
适用场景
csplit命令用于将一个大文件分割成小的碎片,并且将分割后的每个碎片保存成一个文件,csplit命令–>按照指定的范式来分割文件,保存为xx00,xx01…的文件.
拆解文件主要是split和csplit命令,如果说split是按大小来拆分的话,那么csplit则可按匹配来拆分
选项解释
$ csplit -h
/[正则表达式]/ #匹配文本样式,比如/SERVER/,从第一行到包含SERVER的匹配行。
{*} #表示根据匹配重复执行分割,直到文件尾停止,使用{整数}的形式指定分割执行的次数。
-s #静默模式,不打印其他信息。
-n #指定分割后的文件名后缀的数字个数。比如01、02、03等。
-f #指定分割后的文件名前缀。
-b #指定后缀格式。比如%02d.log,类似于C语言中的printf参数格式。
使用方法
$ csplit filename /match/ -n2 {*} -f aa -b ".log"
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
时间: 2017-06-25
这个脚本是在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" +&
Linux tomcat下catalina.out日志文件分割 前言: tomcat默认使用Java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的日志.tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli.jar包到./bin/目录下: 2.拷贝log4j.jar,lo4j.properties到./lib目录下; 3.删除./conf/logging.properties 4.重启 log4j配置样本 实例代码: lo
[权限篇] ubuntu系统中,对于不同用户及不同用户组中用户对文件的操作权限都不相同,通过控制台我们可以快速的对文件权限进行操作. 对于修改权限可以使用两种方案来更改其权限,下面认识一下文件系统权限的组成: 文件权限查看: 1.查看文件权限命令: ls -lh [option:文件名] 2.查看文件夹权限命令 ls -ld [option:文件夹名] 例:-rw-r--r-- 解释:-(代表类型)×××(所有者)×××(组用户)×××(其他用户) 方案一: 下面使用
本文讲述了在linux命令下导出导入.sql文件的方法.分享给大家供大家参考,具体如下: 一.导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径): 1.导出数据和表结构: mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql #/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql 敲回车后会提示输入密码 2.只导出表结构 mysqldump -u用户名 -p密码 -d 数据库名 >
1.log4j进行日志切分 1)准备三个包:log4j-1.2.17.jar tomcat-juli.jar tomcat-juli-adapters.jar 放到tomcat的lib目录或者是工程的WEB_INF/lib下, 2)在lib目录下新建log4j.properties,加入以下内容 log4j.rootLogger = INFO, CATALINA # Define all the appenders log4j.appender.CATALINA = org.
程序在运行的时候为了了解运行状态,会输出日志文件,时间久了日志文件会变得非常大,甚至达到GB级别.我在golang应用里使用logrus包来打日志,配置和使用都很方便,就是没有日志分割的功能,应用在线上运行一个月后日志文件都已经达到上百兆.后来发现了logrotate,这是centos自带的日志分割工具,都不用安装额外组件就能实现定时分割日志. 1.运行原理 logrotate由系统的cron运行,位置在/etc/cron.daily/logrotate #!/bin/sh /usr/sbin/
生成linux库 Linux版本使用的centos7.3,编译生成库 1. cd glog-0.3.3 2. ./configure 3. make make完成后会在.lib下生成相应的库文件 Linux下使用glog库 Linux使用静态库来测试,copy静态库libglog.a和src/glog的头文件到自己的工程目录,创建main.cpp文件,添加如下代码: /******************************************************** Copyr
简化了glog,只保留了写日志文件的功能,只是改写了linux版本,win版本未改写,可以用LOG(INFO)<< 输出日志也可用LOG_IF(INFO,condition)<
在Linux系统下运行.sh文件有两种方法,比如我在root目录下有个datelog.sh文件 第一种(这种办法需要用chmod使得文件具备执行条件(x): chmod u+x datelog.sh): 1.在任何路径下,输入该文件的绝对路径/root/datelog.sh就可执行该文件(当然要在权限允许情况下) 2.cd到datelog.sh文件的目录下,然后执行./datelog.sh 第二种(这种办法不需要文件具备可执行的权限也可运行): 1.在该文件路径下sh加上文件名字即可,sh da
鉴于在调试logback和log4j的文件切割一直无法成功,随性用shell写个脚本用来切割tomcat下的日志文件(大家如果有在logback或log4j使用文件切割成功的话,可以留下使用方式,先谢谢了) 1:废话少说,直接贴上脚本: #!/bin/sh log_dir=/var/log/tomcat monitor_file=$1 #tomcat目录下的catalina.out文件的绝对路径 file_size=`du $monitor_file | awk '{print $1}'` if
1.到Apache官网下载tomcat http://tomcat.apache.org/download-80.cgi 我下载的是tomcat8 jdk是1.8 如果你们的jdk是1.7或者1.7以下的就下载tomcat6或者tomcat7 2.把下载好的tomcat上传到Linux虚拟机下 3.去到tomcat所在的目录下解压压缩包 我的tomcat在/software目录下 解压命令:tar xzvf apache-tomcat-8.5 解压好后会多出一个文件 输入命令:ll 查看目录 接