Linux命令(十二) 分割文件 split 合并文件 join

一、分割文件 split

命令介绍

当处理文件时,有时需要将文件做分割处理,split 命令用于分割文件,可以分割文本文件,按指定的行数分割,每个分割后的文件都包含相同的行数。split 可以分割非文本文件,分割时可以指定每个文件的大小,分割后的文件有相同的大小。split后的文件可以用 cat 命令组装在一起。

常用参数说明

-a 指定分割文件时前缀的长度,默认为2

-b 指定分割每个文件的大小,以字节为单位

-C 指定每个文件中单行的最大字节数

-d 使用数字前缀而非字符前缀

-l 指定分割文件每个包含多少行

--verbose 输出执行时的诊断信息

--version 输出版本信息

实例

分割文件,默认按 1000 行分割文件

split src.txt

按每个文件 3 分割

split -l 3 src.txt

待补充.....

二、合并文件 join

命令简介

如果需要将两个文件根据某种规则连接起来,join 可以完成这个功能,该命令可以找出两个文件中指定列内容相同的行,并加以合并,再输出到标准输出设备。

常用参数说明

-a<1 或 2>  除了显示原来的输出内容之外,还显示命令文件中没用相同列的行

-e<字符串>	若 文件1 与 文件2 中找不到指定的列,则在输出中填入选项中的字符串

-i	比较内容时忽略大小写差异

-o<格式>		按照指定的格式来显示结果

-t<字符>		指定列的分隔符

-v<1 或 2>	跟 -a 相同,到那时只显示文件中没有相同的列

-1<列>		指定匹配列为第一个文件中的某列,如果不指定,默认为第一列
-2<列> 指定匹配列为第二个文件中的某列,如果不指定,默认为第一列 --help 显示帮助

实例

合并文件

join src dst | cat -n

指定输出特定的列

join -o1.1 -o2.2, 2.3 src dst

这两命令没太懂,先记下吧!

上一篇:Emacs 笔记二


下一篇:BZOJ 1692: [Usaco2007 Dec]队列变换