`
喜欢蓝色的我
  • 浏览: 366722 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

liunx下分割大文件命令

 
阅读更多

在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 值为每一输出档的列数大小。
源:http://www.jb51.net/LINUXjishu/115514.html

 

分享到:
评论

相关推荐

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

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

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

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

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

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

    Linux工具split命令分割文件

    Linux 工具 split 命令分割文件 Linux 工具 split 命令是一款功能强大的文件分割工具,能够将大文件分割成多个小文件,使得文件处理和传输变得更加方便。下面我们将详细介绍 split 命令的使用方法、选项和参数。 ...

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

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

    TOMCAT在LINUX下catalina.out文件分割

    本主题主要涉及两个知识点:一是如何理解并使用`catalina.out`文件,二是如何在Linux环境下通过工具进行日志文件分割。 1. `catalina.out`文件详解: - `catalina.out`是Tomcat的默认日志文件,包含了控制台输出的...

    c++ Linux下读写ini文件

    在Linux环境下,C++编程中处理配置文件时,通常会使用到类似INI格式的文本文件。INI文件是一种简单易读的格式,常用于存储应用程序的设置和配置信息。本篇文章将详细探讨如何在C++中读取和写入Linux下的INI文件,...

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

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

    linux下用csplit命令分割文件的方法示例

    ### Linux下使用csplit命令分割文件的详细指南 #### 概述 在Linux环境中处理大型文件时,我们经常需要将其分割成较小的部分以便于管理或处理。这时,`csplit`命令便派上了用场。它能够根据指定的规则将一个大文件...

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

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

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

    在本文中,我们将深入探讨如何在Linux环境下读取和写入ini文件,包括解析文件结构、提取和修改数据。 1. **文件操作基础** 在Linux中,所有文件操作都是通过标准的文件I/O函数完成的。例如,`fopen()`用于打开文件...

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

    默认情况下,Tomcat的主要日志输出文件是`catalina.out`,它记录了服务器启动、运行和关闭过程中的所有标准输出和错误信息。然而,随着服务器运行时间的增长,`catalina.out`可能会变得非常大,导致日志查找和分析变...

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

    cronolog是一个在Linux环境下广泛使用的日志分割工具,它可以根据时间间隔自动创建新的日志文件,从而保持日志文件的大小在一个可管理的范围内。 1. **cronolog的工作原理**:cronolog会监听指定的日志文件,每当...

    linux c++csv文件读写

    在Linux环境下,C++编程语言提供了多种方法来处理CSV(Comma Separated Values)文件的读写操作。CSV文件是一种常见的数据存储格式,通常用于数据交换,因为它的结构简单且易于解析。以下将详细介绍如何在C++中进行...

    详解linux下nohup日志输出过大问题解决方案

    1. 定期分割日志:使用Linux的`split`命令可以将大型日志文件分割成多个小文件。例如,可以设定每天定时执行脚本来分割日志。在示例代码中,`split`命令被用来按指定大小(例如65535000字节,约60MB)分割`nohup.out...

    二进制bin文件分割、填充器: BinCut

    使用方法: 1、在bin文件首部填充字符: bincut -a [filename] [char] [length] bincut -a [文件名] [填充字符] [填充长度(10/16进制)] 例: bincut -a test.bin 10 0x1000 在test.bin的首部填充4096个10...

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

    本文将详细介绍Linux环境下如何进行日志分割,并提供一个名为“日志切分”的示例。 首先,我们需要理解日志分割的目的。主要好处包括: 1. **节省磁盘空间**:日志文件过大可能导致磁盘空间快速耗尽,分割可以避免...

    文件分割程序

    分割文件首先需要打开源文件,读取内容,然后写入新创建的小文件。`open()`、`read()`和`write()`是实现这些操作的基本系统调用。 2. **缓冲区管理**:为了提高效率,通常会使用缓冲区来暂存数据。在读取大文件时,...

    linux下Vi编辑器命令大全

    ### Linux下Vi编辑器命令大全 #### 概述 Vi编辑器是Unix及类Unix操作系统(包括Linux)中广泛使用的文本编辑工具。Vi编辑器具备强大的功能和丰富的命令集,适用于从简单的文本编辑到复杂的脚本编写等多种场景。本文...

    Linux中split大文件分割和cat合并文件详解

    这种情况下,可以先将大文件分割成小文件后分批传输,传完后再合并文件。 1. 分割文件 文件分割可以使用split命令,该即支持文本文件分割,又支持二进制文件分割;而合并文件可以使用cat命令。 1.1 文本文件分割 ...

Global site tag (gtag.js) - Google Analytics