csplit
将文件按照指定的模式分割,默认的输出文件名是xx00、xx01、xx02等,指令会显示每个输出文件的大小。此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、语法
csplit [选项] file 格式
2、选项格式列表
选项 | 说明 |
--hep | 显示帮助文档 |
--version | 显示版本信息 |
-b | --suffix-format=FORMAT | 使用sprintf格式而不是%02d |
-f name | --prefix=PREFIX | 指定输出文件的前缀名字,而不是使用“xx” |
-k | --keep-files | 不要删除错误的输出文件 |
-n num | 指定输出文件名的字符数,这里指文件名中的序号长度 |
-z | --elide-empty-files | 删除空文件 |
-s | --quiet | --silent | 不显示输出文件的大小 |
格式 | 说明 |
整数 | 不包括指定的行,并以其为文件分块边界 |
/表达式/[偏移量] | 不包括匹配到的行,并以其为文件分块边界 |
%表达式%[偏移量] | 预先跳过匹配的行数,以其为文件分块边界 |
{整数} | 将之前指定的模式重复指定的次数 |
{*} | 将之前指定的模式重复尽可能多的次数 |
3、实例
1)将文件从第2行分割
[root@localhost weijie]# cat 1.c // 查看文件
hello world,
i am david.
i love linux,
love code.
[root@localhost weijie]# csplit 1.c 2 // 从第 2 行开始分割,输出分割后的文件大小
14
39
[root@localhost weijie]# ls
11.c 1.c 1.c~ 2.c 3.c 4.c 4.c~ 5.c 6.c test Tsplitaa Tsplitab Tsplitac Tsplitad xaa xab xac xx00 xx01
[root@localhost weijie]# cat xx00 // 查看输出文件
hello world,
[root@localhost weijie]# cat xx01
i am david.
i love linux,
love code.
|
2)设置生成文件的名字
[root@localhost weijie]# csplit -n 3 -f te 1.c 3 // 指定输出文案前缀 te ,名字长度 3 个。这里指文件名中的序号是 3 个长度
27
26
[root@localhost weijie]# ls
11.c 1.c 1.c~ 2.c 3.c 4.c 4.c~ 5.c 6.c te000 te001 test
[root@localhost weijie]# cat te000 // 查看文件
hello world,
i am david.
[root@localhost weijie]# cat te001
i love linux,
love code.
|
做了一个Linux学习的平台,目前出来一个雏形,各位可以参考使用
链接:https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ 密码:n7bk
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341