0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux系统下传输大文件的切割与合并实例分析

马哥Linux运维 来源:马哥Linux运维 作者:Escape 2021-07-02 11:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

往往是因为网络传输的限制,导致很多时候,我们需要在 Linux 系统下进行大文件的切割。这样将一个大文件切割成为多个小文件,进行传输,传输完毕之后进行合并即可。

文件切割 - split

在 Linux 系统下使用 split 命令进行大文件切割很方便

命令语法

使用实例

# 行切割文件

$ split -l 300000 users.sql /data/users_

# 使用数字后缀

$ split -d -l 300000 users.sql /data/users_

# 按字节大小分割

$ split -d -b 100m users.sql /data/users_

```bash

**帮助信息**

```bash

# 帮助信息

$ split --help

Usage: split [OPTION]。。. [FILE [PREFIX]]

Output pieces of FILE to PREFIXaa, PREFIXab, 。。.;

default size is 1000 lines, and default PREFIX is ‘x’。

With no FILE, or when FILE is -, read standard input.

Mandatory arguments to long options are mandatory for short options too.

-a, --suffix-length=N generate suffixes of length N (default 2) 后缀名称的长度(默认为2)

--additional-suffix=SUFFIX append an additional SUFFIX to file names

-b, --bytes=SIZE put SIZE bytes per output file 每个输出文件的字节大小

-C, --line-bytes=SIZE put at most SIZE bytes of records per output file 每个输出文件的最大字节大小

-d use numeric suffixes starting at 0, not alphabetic 使用数字后缀代替字母后缀

--numeric-suffixes[=FROM] same as -d, but allow setting the start value

-e, --elide-empty-files do not generate empty output files with ‘-n’ 不产生空的输出文件

--filter=COMMAND write to shell COMMAND; file name is $FILE 写入到shell命令行

-l, --lines=NUMBER put NUMBER lines/records per output file 设定每个输出文件的行数

-n, --number=CHUNKS generate CHUNKS output files; see explanation below 产生chunks文件

-t, --separator=SEP use SEP instead of newline as the record separator; 使用新字符分割

‘’ (zero) specifies the NUL character

-u, --unbuffered immediately copy input to output with ‘-n r/。。.’ 无需缓存

--verbose print a diagnostic just before each 显示分割进度

output file is opened

--help display this help and exit 显示帮助信息

--version output version information and exit 显示版本信息

The SIZE argument is an integer and optional unit (example: 10K is 10*1024)。

Units are K,M,G,T,P,E,Z,Y (powers of 1024) or KB,MB,。。. (powers of 1000)。

CHUNKS may be:

N split into N files based on size of input

K/N output Kth of N to stdout

l/N split into N files without splitting lines/records

l/K/N output Kth of N to stdout without splitting lines/records

r/N like ‘l’ but use round robin distribution

r/K/N likewise but only output Kth of N to stdout

GNU coreutils online help: 《http://www.gnu.org/software/coreutils/》

Full documentation at: 《http://www.gnu.org/software/coreutils/split》

or available locally via: info ‘(coreutils) split invocation’

文件合并 - cat

在 Linux 系统下使用 cat 命令进行多个小文件的合并也很方便

命令语法

-n: #显示行号

-e: #以$字符作为每行的结尾

-t: #显示TAB字符(^I)

cat [-n] [-e] [-t] [输出文件名]

使用实例

# 合并文件

$ cat /data/users_* 》 users.sql

帮助信息

# 帮助信息

$ cat --h

Usage: cat [OPTION]。。. [FILE]。。.

Concatenate FILE(s) to standard output.

With no FILE, or when FILE is -, read standard input.

-A, --show-all equivalent to -vET

-b, --number-nonblank number nonempty output lines, overrides -n

-e equivalent to -vE

-E, --show-ends display $ at end of each line

-n, --number number all output lines

-s, --squeeze-blank suppress repeated empty output lines

-t equivalent to -vT

-T, --show-tabs display TAB characters as ^I

-u (ignored)

-v, --show-nonprinting use ^ and M- notation, except for LFD and TAB

--help display this help and exit

--version output version information and exit

Examples:

cat f - g Output f‘s contents, then standard input, then g’s contents.

cat Copy standard input to standard output.

GNU coreutils online help: 《http://www.gnu.org/software/coreutils/》

Full documentation at: 《http://www.gnu.org/software/coreutils/cat》

or available locally via: info ‘(coreutils) cat invocation’

作者: Escape

文章出处:【微信公众号:马哥Linux运维】

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11854

    浏览量

    219819

原文标题:Linux 下大文件切割与合并

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Linux文件删除的底层原理和恢复方法

    rm -rf 大概是 Linux 世界里杀伤力最大的命令,没有之一。手一抖、路径一错、通配符一飘,几个 G 的数据就没了。更要命的是 Linux 默认没有回收站机制,rm 删掉的文件不会像 Windows 那样安静地躺在回收站里
    的头像 发表于 02-11 09:14 1108次阅读

    Linux进程树分析工具pstree详解与实战指南(另一视角优化Linux系统

    Linux 系统开发与运维中,理解进程的运行状态和相互关系是排查问题、优化性能的基础。pstree 作为一款轻量高效的进程树可视化工具,能直观展示系统中所有进程的父子关系,为系统分析
    的头像 发表于 02-04 16:21 995次阅读
    <b class='flag-5'>Linux</b>进程树<b class='flag-5'>分析</b>工具pstree详解与实战指南(另一视角优化<b class='flag-5'>Linux</b><b class='flag-5'>系统</b>)

    技术对比:超声切割与其他主流切割方式的差异分析

    在工业制造和材料加工中,如何选择切割技术是个实际问题。激光切割、水刀切割、传统刀片切割和超声波切割各有特点。我们尝试从几个维度进行对比,帮助
    的头像 发表于 01-03 22:54 531次阅读
    技术对比:超声<b class='flag-5'>切割</b>与其他主流<b class='flag-5'>切割</b>方式的差异<b class='flag-5'>分析</b>

    飞凌嵌入式ElfBoard-Linux系统中的文件分类

    从本质上讲,Linux系统就是由文件组成的,一切皆文件linux系统设计的核心理念,接下来介绍
    发表于 12-09 08:59

    对比分析电能质量在线监测装置支持的断点续传文件传输协议的优缺点

    优缺点对比分析: 一、各协议优缺点逐一拆解 1. FTP(文件传输协议) 优点 断点续传机制成熟 :依托REST命令可精准定位字节偏移量,支持大文件分块续传,且内置 CRC 校验保障数据完整性,是装置的基础标配功能,适配性强。
    的头像 发表于 12-05 17:49 3834次阅读
    对比<b class='flag-5'>分析</b>电能质量在线监测装置支持的断点续传<b class='flag-5'>文件传输</b>协议的优缺点

    飞凌嵌入式ElfBoard-文件I/O的了解探究之Linux系统文件管理机制

    的静态文件读取到内存中进行缓存,读写操作都是针对这份动态文件。,在Linux系统中,内核会为每个进程设置一个专门的数据结构用于管理该进程,用于记录进程的状态信息、运行特征等,这个被称为
    发表于 11-18 08:50

    氩离子的抛光与切割技术

    氩离子抛光和切割技术是现代微观分析领域中不可或缺的样品制备手段。该技术通过利用宽离子束(约1毫米宽)对样品进行切割或抛光,能够精确地去除样品表面的损伤层,并暴露出高质量的分析区域,为后
    的头像 发表于 10-29 14:41 540次阅读
    氩离子的抛光与<b class='flag-5'>切割</b>技术

    飞凌嵌入式ElfBoard-系统应用编程之文件I/O

    ,然后结束进程。在Linux系统下,可以通过ulimit -n命令来查看进程可打开的最大文件数:$ ulimit -n//执行1024//系统返回当前支持最
    发表于 10-24 08:57

    Linux三大主流文件系统解析

    还在为选择哪个文件系统而纠结?作为一名摸爬滚打多年的运维老鸟,我将用最接地气的方式,带你彻底搞懂 Linux 三大主流文件系统的奥秘。
    的头像 发表于 08-05 17:37 1880次阅读

    大文件高效传输不求人!Ymodem协议实战示例与核心技巧揭秘

    分享优化传输效率的核心技巧! Ymodem—— 是一种基于串行通信的文件传输协议,由Chuck Forsberg于1980年代初期在Xmodem协议基础上改进而来。通过引入1024字节数据块和批量文件传输机制,显著提升
    的头像 发表于 07-28 17:38 1412次阅读
    <b class='flag-5'>大文件</b>高效<b class='flag-5'>传输</b>不求人!Ymodem协议实战示例与核心技巧揭秘

    Linux系统目录结构全面剖析

    Linux文件系统采用层次化的目录结构,这种设计遵循了Unix哲学中的"一切皆文件"原则。理解Linux目录层次架构对于系统管理员、运维工程
    的头像 发表于 07-21 17:33 1091次阅读

    可以通过SPP协议传输大文件吗?

    我正在使用 CYBT-343026 (CYW-20706 Silicon) 模块。 我根据 SPP 样本制作了一个操作 SPP 的应用程序。 但是,传输大数据时有时会丢失数据。 它从
    发表于 07-07 08:16

    碳化硅衬底切割自动对刀系统与进给参数的协同优化模型

    与效率意义重大。然而,当前研究多将二者独立分析,难以满足高精度切割需求,亟需构建协同优化模型。 二、自动对刀系统与进给参数协同优化的挑战 2.1 动态交互复杂
    的头像 发表于 07-03 09:47 718次阅读
    碳化硅衬底<b class='flag-5'>切割</b>自动对刀<b class='flag-5'>系统</b>与进给参数的协同优化模型

    主流版本控制工具Git vs Perforce P4:架构模式、性能、大文件管理及分支管理对比详解

    Git vs Perforce P4,如何选型?架构模式、性能、大文件管理、分支策略四大维度对比,帮你全面了解两者的核心差异,选择更合适你团队需求的版本控制系统
    的头像 发表于 06-13 14:52 1031次阅读
    主流版本控制工具Git vs Perforce P4:架构模式、性能、<b class='flag-5'>大文件</b>管理及分支管理对比详解

    单片机项目实例文件系统资料与SD卡资料

    单片机项目实例文件系统资料与SD卡资料,推荐下载!
    发表于 06-09 22:31