您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux百科

如何在 Linux 中使用 split 命令拆分文本文件

时间:2023-05-18 14:38:51  来源:Linux迷  作者:

linux 提供了许多用于文本操作和处理的命令,其中包括 split 命令。使用 split 命令,您可以轻松地将大文件拆分为较小的文件,或根据特定条件提取文件的特定部分。

让我们来探索如何在 Linux 中使用 split 命令来拆分文件。无论您需要从大文件中提取特定部分,还是将文件拆分为较小的块,split 命令都可以帮助您轻松实现目标。

什么是 split 命令?

split命令是由Torbjorn Granlund和Richard M. Stallman创建的流行的Linux命令行工具。顾名思义,split命令用于将文件拆分为较小的子文件。

该命令对于管理大型文件或在带宽有限的网络上传输文件非常有用。通过将大文件拆分为较小的部分,您可以减少需要传输或存储的数据量。您还可以使用split命令的逆操作将多个文件合并为一个文件。

split命令的语法

split命令的基本语法如下:split [选项]… [文件] [前缀]

  • [选项]:split命令有不同的选项,用于决定如何拆分文件以及您可能有兴趣添加的其他特定功能。
  • [文件]:这是您要拆分的文件的路径。
  • [前缀]:这是子文件的前缀。

如何使用 split 命令

您可以使用split命令按大小或长度将大文件分割为较小的文件。您甚至可以选择您想要的具体数量的较小文件。

为了演示,我们将使用一个名为linuxmi.txt的文本文件。请为本教程选择一个具有多行和相当大文件大小的文本文件。如果您没有这样的文件,您可以使用 Linux 文本编辑器或 cat 命令粘贴大量文本并保存。

根据行数拆分大文件

您可以使用split命令根据每个文件的特定行数将大文件分割为较小文件。

以下是语法:split -l [行数] [输入文件] [输出文件前缀]

例如,您可能希望将一个包含 210 行的文件分割为每个文件50行;您将获得五个较小的文件。前四个文件每个有50行,第五个文件只包含10行。

要将名为”largefile.txt”的文件拆分为每个文件100行的较小文件,请运行以下命令:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ split -l 100 linuxmi.txt smallfile

使用ls命令列出目录内容,您将看到拆分后的文件。

您还可以使用split命令根据特定的文件大小将大文件拆分为较小的文件。

以下是基本的语法:split -b [以字节为单位的大小] [输入文件] [输出文件前缀]

通过运行以下命令将largefile.txt拆分为每个文件300字节的较小文件:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ split -b 300 linuxmi.txt smallfile

这是结果:

按大小拆分大文件的结果

将大文件分割为特定数量的文件

您还可以将文件分割为固定数量的文件,而不考虑文件中的文件数和字节数。您可以使用-n选项来实现这一点。以下是语法:

split -n [文件数量] [输入文件] [输出文件前缀] 要将大文件分割为五个部分,请执行以下命令:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ split -n 5 linuxmi.txt smallfile

结果应该如下所示:

按文件数量拆分大文件

更改拆分文件的后缀长度

您可能已经注意到,附加到输出文件名的后缀的默认长度为两个字符。例如,smallfileaa,smallfileab,smallfileac等。

要更改后缀的长度,您可以使用 -a 选项。以下是更改后缀长度的语法:

split -a [后缀长度] [输入文件] [输出文件前缀]

您可以将此后缀长度选项与其他 split 命令一起使用。要将 linuxmi.txt 文件分割为10个部分,并具有 4 个字符的后缀长度,请执行以下命令:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ split -a 4 -n 10 linuxmi.txt smallfile

当您列出目录的内容时,输出应如下所示:

将大文件拆分为具有较长后缀的较小文件

使用cat合并多个文件

好消息是,您始终可以将拆分的文件合并在一起,以生成原始文件。要将拆分的文件合并回原始文件,请使用cat命令。以下是执行此操作的语法:

cat [拆分文件] > [输出文件]

在使用cat命令合并拆分文件时,指定拆分文件的正确顺序非常重要。

cat命令只是按照指定顺序连接文件,因此如果文件顺序不正确,合并后的文件将损坏。

在拥有许多拆分文件的情况下,例如一百个拆分文件,逐个键入每个文件并按照正确的顺序进行操作将会很麻烦。

这就是前缀的作用。只需添加一个星号(*),就可以合并以该前缀开头的所有文件。

cat prefix* > [输出文件]

以下是一个示例命令,它将拆分文件smallfileaa、smallfileab、smallfileac和smallfilead合并成一个名为linuxmi.txt的文件:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ cat smallfile* > linuxmi.txt

此命令将连接与模式smallfile*匹配的所有拆分文件的内容,并将输出重定向到一个名为 bigfile.txt 的新文件。它还将按照文件名的自然顺序列出拆分文件,这应该是合并的正确顺序。

使用Linux工具提高效率

split 命令只是 Linux 提供的众多工具之一,它可以通过将大文件拆分为更小、更易管理的块来帮助您高效地管理大文件。

通过掌握 Linux 文本处理命令,您可以节省时间和资源,提高效率。



Tags: Linux   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08  Search: Linux  点击:(6)  评论:(0)  加入收藏
2024 年 Linux 和开源的六大趋势预测
让我们尝试预测未来吧!新的一年快乐,朋友们 ✨2024 年的钟声已经敲过,我们有必要去预见一下将塑造本年度的各种潮流。我们不能预见未来,所以无法精确预知将会发生什么,但根据目前...【详细内容】
2024-01-09  Search: Linux  点击:(92)  评论:(0)  加入收藏
对 Bash 感到厌倦?教你如何在 Linux 中更改默认 Shell
Bash 并不是唯一可供选择的 Shell。还存在数量众多的 Shell,它们都有一些独特的特性,例如 Zsh、Fish、Ksh 和 Xonsh。在你的系统中,你可以同时安装多个 Shell。要想将另一个 Sh...【详细内容】
2023-12-14  Search: Linux  点击:(199)  评论:(0)  加入收藏
适用于 Linux 的 LibreOffice 替代品
LibreOffice 是一个出色的开源文档套件。它预装在许多 Linux 发行版上,应该足以满足大多数用户的需求。然而,有些人可能不喜欢它的用户界面和功能集。某些用户可能想尝试其他...【详细内容】
2023-11-30  Search: Linux  点击:(122)  评论:(0)  加入收藏
十个最佳免费 Linux 防火墙工具
概述防火墙是保护网络边界的关键。防火墙会阻止敏感端口并过滤传入和传出流量,以阻止恶意连接并确保不会发生未经请求的数据交换。在自由开源软件的世界里,有很多防火墙解决方...【详细内容】
2023-11-28  Search: Linux  点击:(173)  评论:(0)  加入收藏
如何使用 Linux Xargs 命令,看这篇就够了
一、xargs 命令是什么?该xargs命令构建并执行通过标准输入提供的命令。它接受输入并将其转换为另一个命令的命令参数。此功能在文件管理中特别有用,可与rm、cp、mkdir和其他类...【详细内容】
2023-11-23  Search: Linux  点击:(176)  评论:(0)  加入收藏
揭秘 Linux 调度策略与 CFS 调度算法:解锁内核的奥秘
引言在当今计算机领域,Linux操作系统扮演着至关重要的角色,而其中的调度策略和内核结构体更是它多任务处理的核心。本文将引领你深入探索Linux中的调度策略,理解不同策略如何影...【详细内容】
2023-11-23  Search: Linux  点击:(216)  评论:(0)  加入收藏
使用 dialog 和 jq 在 Linux 上编写高效终端 TUI
为何选择文字用户界面(TUI)?许多人每日都在使用终端,因此,文字用户界面Text User Interface(TUI)逐渐显示出其价值。它能减少用户输入命令时的误差,让终端操作更高效,提高生产力。以...【详细内容】
2023-11-19  Search: Linux  点击:(117)  评论:(0)  加入收藏
这些 Linux 基础命令你总得掌握吧
很多深度学习/机器学习/数据分析等领域(或者说大多数在Python环境下进行操作的领域)的初学者入门时是在Windows上进行学习,也得益于如Anaconda等工具把环境管理做的如此友善。...【详细内容】
2023-11-10  Search: Linux  点击:(169)  评论:(0)  加入收藏
如何在 Linux 下使用 WebP 图像
WebP 图像格式的定义2010 年 9 月,谷歌提出了 WebP 图像格式,其愿景是完全替代 JPEG、PNG 和 GIF 文件格式。就如你所见,WebP 是一个全能型的格式,继承了先前压缩算法的所有特性...【详细内容】
2023-09-25  Search: Linux  点击:(315)  评论:(0)  加入收藏
▌简易百科推荐
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08    IT之家  Tags:Linux   点击:(6)  评论:(0)  加入收藏
从原理到实践:深入探索Linux安全机制
Linux 是一种开源的类Unix操作系统内核,由Linus Torvalds在1991年首次发布,其后又衍生出许多不同的发行版(如Ubuntu、Debian、CentOS等)。前言本文将从用户和权限管理、文件系统...【详细内容】
2024-03-27  凡夫编程  微信公众号  Tags:Linux安全   点击:(16)  评论:(0)  加入收藏
在Linux系统中,如何处理内存管理和优化的问题?
本文对 Linux 内存管理和优化的一些高级技巧的详细介绍,通过高级的内存管理技巧,可以帮助系统管理员和开发人员更好地优化 Linux 系统的内存使用情况,提高系统性能和稳定性。在...【详细内容】
2024-03-26  编程技术汇  微信公众号  Tags:Linux   点击:(10)  评论:(0)  加入收藏
Linux 6.9-rc1 内核发布:AMD P-State 首选核心、BH 工作队列
IT之家 3 月 25 日消息,Linus Torvalds 宣布,Linux 6.9 内核的首个 RC(候选发布)版 Linux 6.9-rc1 发布。▲ Linux 6.9-rc1Linus 表示,Linux 内核 6.9 看起来是一个“相当正常”...【详细内容】
2024-03-25    IT之家  Tags:Linux   点击:(11)  评论:(0)  加入收藏
轻松实现Centos系统的软件包安装管理:yum指令实战详解
yum 是一种用于在 CentOS、Red Hat Enterprise Linux (RHEL) 等基于 RPM 的 Linux 发行版上安装、更新和管理软件包的命令行工具。它可以自动解决软件包依赖关系,自动下载并...【详细内容】
2024-02-27  凡夫贬夫  微信公众号  Tags:Centos   点击:(54)  评论:(0)  加入收藏
Win + Ubuntu 缝合怪:第三方开发者推出“Wubuntu”Linux 发行版
IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据...【详细内容】
2024-02-27    IT之家  Tags:Ubuntu   点击:(49)  评论:(0)  加入收藏
Linux中磁盘和文件系统工作原理解析
在Linux系统中,一切皆文件的概念意味着所有的资源,包括普通文件、目录以及设备文件等,都以文件的形式存在。这种统一的文件系统管理方式使得Linux系统具有高度的灵活性和可扩展...【详细内容】
2024-02-20  王建立    Tags:Linux   点击:(51)  评论:(0)  加入收藏
Linux子系统概览
inux操作系统是一个模块化的系统,由多个子系统组成。这些子系统协同工作,使Linux能够执行各种任务。了解Linux的子系统有助于更好地理解整个操作系统的运作机制。以下是Linux...【详细内容】
2024-02-01    简易百科  Tags:Linux   点击:(76)  评论:(0)  加入收藏
Linux内核:系统之魂与交互之源
内核,作为任何基于Linux的操作系统的心脏,扮演着至关重要的角色。它不仅是计算机系统软件与硬件之间的桥梁,更是确保系统稳定、高效运行的关键。内核提供了一系列核心功能,为上...【详细内容】
2024-02-01  松鼠宝贝    Tags:Linux内核   点击:(68)  评论:(0)  加入收藏
如何确保Linux进程稳定与持久
在Linux系统中,进程的稳定性与持久性对于维持系统的持续运行至关重要。然而,由于各种原因,进程可能会面临崩溃或系统重启的情况。为了确保关键进程能够持续运行,我们必须采取一...【详细内容】
2024-01-19  松鼠宝贝    Tags:Linux进程   点击:(85)  评论:(0)  加入收藏
站内最新
站内热门
站内头条