非常有用的
csplit
命令可以将单个文件分割成多个文件。Carla Schroder 解释说。
Linux 有几个用于分割文件的工具程序。那么你为什么要分割文件呢?一个用例是将大文件分割成更小的尺寸,以便它适用于比较小的存储介质,比如 U 盘。当您遇到 FAT32(最大文件大小为 4GB),且您的文件大于此时,通过 U 盘传输文件也是一个很好的技巧。另一个用例是加速网络文件传输,因为小文件的并行传输通常更快。
我们将学习如何使用 csplit
,split
和 cat
来重新整理文件,然后再将文件合并在一起。这些操作在任何文件类型下都有用:文本、图片、音频文件、ISO 镜像文件等。
使用 csplit 分割文件
csplit
是这些有趣的小命令中的一个,它永远伴你左右,一旦开始用它就离不开了。csplit
将单个文件分割成多个文件。这个示例演示了最简单的使用方法,它将文件 foo.txt 分为三个文件,以行号 17 和 33 作为分割点:
$ csplit foo.txt 17 33
2591
3889
2359
csplit
在当前目录下创建了三个新文件,并以字节为单位打印出新文件的大小。默认情况下,每个新文件名为 xx_nn
:
$ ls
xx00
xx01
xx02
您可以使用 head
命令查看每个新文件的前十行:
$ head xx*
==> xx00 xx01 xx02 foo2.txt
示例中的星号通配符将匹配到所有以 SB0 开头的文件,这可能不会得到您想要的结果。您可以使用问号通配符进行更精确的匹配,每个字符使用一个问号:
$ cat SB0?????? > foo2.txt
和往常一样,请查阅相关的手册和信息页面以获取完整的命令选项。
via: https://www.linux.com/learn/intro-to-linux/2017/8/splitting-and-re-assembling-files-linux
作者:CARLA SCHRODER 译者:firmianay 校对:wxy
本文由 LCTT 原创编译,Linux中国 荣誉推出