linux按模式分割文件是什么-csplit命令使用与实例

linux按模式分割文件是什么-csplit命令使用与实例

linux csplit命令

Linux系统中的csplit命令主要用于对文件进行分割操作。

该命令可以根据指定的模板样式将一个文件切割成多个小文件,并分别保存为xx00、xx01、xx02等形式的文件名。如果输入文件名为”-“,表示从标准输入获取内容进行分割处理。

命令格式

<pre class="brush:php;toolbar:false">csplit [-kqsz][-b][-f] [-n][--help][--version][文件][模板样式...]

常用选项说明

  • -b或–suffix-format= 默认输出文件名为xx00,xx01…等格式,可通过此参数自定义后缀格式。
  • -f或–prefix= 用于设置输出文件的前缀,默认是xx,可以修改为你想要的字符串
  • -k或–keep-files 即使程序中断或出错,也保留已经生成的分割文件。
  • -n或–digits= 设置输出文件编号的位数,默认是两位数(如xx00),可更改为三位或更多。
  • -q或-s或–quiet或–silent 静默模式,不显示执行过程信息。
  • -z或–elide-empty-files 自动删除空文件(大小为0字节的文件)。
  • –help 显示帮助文档。
  • –version 查看当前命令版本信息。

使用示例

以下命令将以testfile文件第2行为分隔点,将其分为两个文件:

<pre class="brush:php;toolbar:false">csplit testfile 2

查看testfile文件内容如下:

<pre class="brush:php;toolbar:false">$ cat testfile  hello Linux! Linux is a free Unix-type operating system. This is a Linux testfile! Linux 

执行csplit命令后的输出结果为:

<pre class="brush:php;toolbar:false">$ csplit testfile 2   13 #第一个分割文件xx00的字符数量   76 #第二个分割文件xx01的字符数量  

执行完成后,在testfile所在目录会生成两个新文件:xx00和xx01。其中xx00的内容为:

<pre class="brush:php;toolbar:false">$ cat xx00   hello Linux! #原testfile第一行内容  

而xx01的内容为:

<pre class="brush:php;toolbar:false">$ cat xx01   Linux is a free Unix-type operating system. #testfile中第二行及之后的内容   This is a Linux testfile!   Linux 

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享