`
ihyperwin
  • 浏览: 434653 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

linux系统下分割大文件的方法

 
阅读更多

本文介绍下在linux系统中,分割大文件的方法,比如一个5gb日志文件切割为很多小块.

在linux中分割大文件,比如一个5gb日志文件,需要把它分成多个小文件,分割后以利于普通的文本编辑器读取。
有时,需要传输20gb的大文件到另一台服务器,也需要把它分割成多个文件,这样便于传输数据。

以下通过五个不同的例子,来讲解Linux下分割大文件的方法,供大家参考。

例1、以每个文件1000行分割

split命令分割文件成每个文件1000行,并且文件名依次为 [前缀]aa, [前缀]ab, [前缀]ac等,默认的前缀是X,每个文件的行数为1000行。
命令:

 

复制代码
代码如下:

$ split mylog -l 1000
$ wc -l *
4450 mylog
1000 xaa
1000 xab
1000 xac
1000 xad
450 xae

 

例2、以每个文件20MB分割
分割文件为多个20MB的文件,附带-b选项。

命令:

 

复制代码
代码如下:

$ split -b 20M logdata
$ ls -lh | tail -n +2
-rw------- 1 sathiya sathiya 102M Jul 25 18:47 logdata
-rw------- 1 sathiya sathiya 20M Jul 25 19:20 xaa
-rw------- 1 sathiya sathiya 20M Jul 25 19:20 xab
-rw------- 1 sathiya sathiya 20M Jul 25 19:20 xac
-rw------- 1 sathiya sathiya 20M Jul 25 19:20 xad
-rw------- 1 sathiya sathiya 20M Jul 25 19:20 xae
-rw------- 1 sathiya sathiya 1.6M Jul 25 19:20 xaf

 

例3、以每个文件50MB指定前缀分割
使用–bytes选项把文件分割成多个50MB的文件,–bytes类似-b选项,在第二个参数指定前缀。

命令:

 

复制代码
代码如下:

$ split --bytes=50M logdata mydatafile
$ ls -lh
total 204M
-rw------- 1 sathiya sathiya 102M Jul 25 18:47 logdata
-rw------- 1 sathiya sathiya 50M Jul 25 19:23 mydatafileaa
-rw------- 1 sathiya sathiya 50M Jul 25 19:23 mydatafileab
-rw------- 1 sathiya sathiya 1.6M Jul 25 19:23 mydatafileac

 

例4、基于行数分割文件
使用-l选项指定行数来把文件分割成多个行数相同的文件。
命令:

 

复制代码
代码如下:

$ wc -l testfile
2591 testfile
$ split -l 1500 testfile importantlog
$ wc -l *
1500 importantlogaa
1091 importantlogab
2591 testfile

 

例5、以数字后缀命名分割文件
使用-d选项可以指定后缀为数字,如00,01,02..,而不是aa,ab,ac。

命令:

 

复制代码
代码如下:

$ split -d testfile
$ ls
testfile x00 x01 x02

 

可用选项

 

复制代码
代码如下:

短选项 长选项 选项描述
-b –bytes=SIZE SIZE 值为每一输出档案的大小,单位为 byte。
-C –line-bytes=SIZE 每一输出档中,单行的最大 byte 数。
-d –numeric-suffixes 使用数字作为后缀。
-l –lines=NUMBER NUMBER 值为每一输出档的列数大小。</p> <p>短选项 长选项 选项描述
-b –bytes=SIZE SIZE 值为每一输出档案的大小,单位为 byte。
-C –line-bytes=SIZE 每一输出档中,单行的最大 byte 数。
-d –numeric-suffixes 使用数字作为后缀。
-l –lines=NUMBER NUMBER 值为每一输出档的列数大小。
分享到:
评论

相关推荐

    linux系统下分割大文件的方法.docx

    在Linux系统中,处理大文件是一项常见的任务,特别是在日志管理、数据传输或者备份场景下。当遇到过大的文件无法用常规方式处理时,可以使用`split`命令将其分割成多个小文件。本文将详细解释如何使用`split`命令...

    Linux系统下基于Tcp的多线程大文件上传实现.pdf

    本文介绍了一种基于Tcp的多线程大文件上传实现方法,在Linux系统下实现大文件上传的解决方案。该方法通过将大文件分块,并使用多线程技术来实现文件传输,提高了文件传输的效率。 知识点1:多线程编程 * 多线程...

    Linux tomcat下catalina.out日志文件分割

    Linux tomcat下catalina.out日志文件分割 前言: tomcat默认使用Java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的日志。tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli...

    14-Java操作Linux命令分割合并文本文件1

    `split`命令可以基于行数或大小分割文件。在Java中,可以读取大文件,每次处理一部分内容,然后写入新文件。 5. **处理文件前的磁盘空间检查** - 在执行文件操作前,通常需要检查磁盘空间是否足够。`getDiskUsage`...

    Linux系统Tomcat日志分割jar包及配置文件

    Linux Tomcat下使用Log4j接管catalina.out 日志文件生成方式,按天分割,解决catalina.out日志文件过大问题 1、将log4j-1.2.17.jar、tomcat-juli-adapters.jar两个jar包和log4j.properties文件拷贝到 Tomcat 的 lib...

    TOMCAT在LINUX下catalina.out文件分割

    - 除了`cronolog`,还可以使用其他工具,如`logrotate`,它是Linux系统中的一个标准日志管理工具,可以定期旋转、压缩、删除日志文件。 - 另外,也可以自定义`catalina.sh`脚本,将日志输出分别重定向到不同的文件...

    Linux文件系统庖丁解牛 - 知乎1

    Linux 文件系统是操作系统的核心组成部分,它负责管理和组织磁盘上的数据,使得用户能够高效地存储、检索和操作文件。...理解Linux文件系统的工作原理对于任何使用或开发Linux系统的人员都至关重要。

    仿linux文件管理系统(操作系统课程设计)

    4. i节点(inode):每个文件在Linux系统中都有一个对应的i节点,它存储了文件的所有元数据,包括文件大小、创建和修改时间、权限、拥有者信息,以及指向文件数据块的指针。模拟i节点节点是理解文件系统工作原理的...

    Linux下文件的切分与合并的简单方法介绍

    linux下文件分割可以通过split命令来实现,可以将一个大文件拆分成指定大小的多个文件,并且拆分速度非常的快,可以指定按行数分割和安大小分割两种模式。Linux下文件合并可以通过cat命令来实现,非常简单。 在...

    Linux系统下的ELF文件分析

    ### Linux系统下的ELF文件分析 #### 1. 引言 随着Linux系统的不断发展与普及,**可执行和可链接格式(Executable and Linkable Format,简称ELF)**已成为Linux系统下极其重要的可执行文件格式之一。作为一种标准...

    具有快照功能的Linux文件系统.pdf

    本文主要介绍了快照技术的工作原理和关键元数据的数据结构,分析了一种具有快照功能的Linux文件系统ext3ss的实现方法。ext3ss文件系统基于写时拷贝(Copy-On-Write,COW)机制,能够在文件系统级别添加快照功能。 ...

    linux 下实现对ini文件的读取和写入

    在Linux操作系统中,ini文件是一种常见的配置文件格式,主要用于存储应用程序的设置和参数。它们以易于阅读的文本格式呈现,通常包含多个节(sections)和键值对(key-value pairs)。在本文中,我们将深入探讨如何...

    Linux下tomcat日志catalina.out按天(/周)分割

    在Linux环境中,Tomcat作为广泛使用的Java应用服务器,其日志管理是系统监控和问题排查的重要环节。默认情况下,Tomcat的主要日志输出文件是`catalina.out`,它记录了服务器启动、运行和关闭过程中的所有标准输出和...

    Java项目linux启动脚本以及日志分割安装软件

    在IT行业中,尤其是在服务器管理和自动化运维领域,熟练掌握Linux系统操作和相关工具的使用是至关重要的。本资源主要涉及两个核心知识点:Java项目的Linux启动脚本和日志分割工具cronolog。 首先,让我们来深入理解...

    基于linux系统的文件下载服务器-客户端-服务器端.zip

    7. **文件分块传输**:大文件可能被分割成多个小块进行传输,以优化网络带宽利用,提高传输速度,同时可以实现断点续传功能。 8. **错误处理与恢复机制**:在文件传输过程中,可能会出现网络中断或其他错误,服务器...

    linux下nohup日志输出过大问题的解决方法

    Linux 下 nohup 日志输出过大问题的解决方法 Linux 是一个功能强大且广泛使用的操作系统,nohup 命令是 Linux 中的一个常用命令,用于在后台运行程序并将输出重定向到文件中。但是在使用 nohup 命令时,经常会遇到...

    Linux文件系统简介1

    在Linux系统中,文件系统扮演着至关重要的角色,它提供了以下三个主要功能: 1. **便于磁盘空间的管理**: 在没有文件系统的情况下,直接在磁盘上管理数据会变得极其复杂。比如,我们需要手动跟踪每个文件的存储...

    卸载Linux系统的解决方案.pdf

    Linux 是一个免费的操作系统,运行于微机上,具有开放性,因而受到广大电脑爱好者的欢迎,但是在个人用户方面,Linux 下的软件、开发工具等暂时还无法与 Windows 相比。 知识点二:硬盘分区的概念 硬盘可以分割成...

    系统小软--橘子文件分割软件

    5. **快速合并**:除了分割文件,橘子文件分割软件还提供合并功能,用户只需按照顺序加载所有分割文件,即可一键完成合并,恢复原始RAR文件。 6. **跨平台兼容**:虽然未在标签中提及,但一款优秀的文件处理工具...

    日志分割带有完整的说明,对linux上面产生的日志进行分割

    在Linux系统中,日志管理是一项重要的任务,尤其对于大型服务或应用来说,日志文件可能会迅速增长,占用大量磁盘空间。为了有效地管理和分析这些日志,通常会采用日志分割的技术。日志分割是一种将庞大日志文件按照...

Global site tag (gtag.js) - Google Analytics