找回密码
 注册
关于网站域名变更的通知
查看: 644|回复: 3
打印 上一主题 下一主题

Linux csplit命令

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-9-8 18:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
% q% |# O& S. K
Linux csplit命令用于分割文件。
$ B0 F! G/ K& O+ g* v
& R8 X  ]/ p9 ?) D( Q$ T4 ~- Q将文件依照指定的范本样式予以切割后,分别保存成名称为xx00,xx01,xx02...的文件。若给予的文件名称为"-",则csplit指令会从标准输入设备读取数据。0 S: @, S( T: q; m: c8 H7 l

; q' D) H+ H- N1 g  @/ Y语法
- I' p* p1 M( h& x+ _
  a" s1 I) p5 J0 M3 ocsplit [-kqsz][-b<输出格式>][-f<输出字首字符串>]
  b* `, `6 p& {  p9 T4 `; c[-n<输出文件名位数>][--help][--version][文件][范本样式...] 6 ^; y) M/ V0 Q& F1 n8 ?9 t' h
6 [* _3 W- r% G0 P% T) T, S9 u3 d" X8 U
; G0 G' U7 g/ E1 b: Y1 G
参数:) _. ^& L$ }. V
( N) }/ J  I, K
-b<输出格式>或--suffix-format=<输出格式> 预设的输出格式其文件名称为xx00,xx01...等,您可以通过改变<输出格式>来改变输出的文件名。
  O/ g2 `4 S) b! Z$ ]-f<输出字首字符串>或--prefix=<输出字首字符串> 预设的输出字首字符串其文件名为xx00,xx01...等,如果你指定输出字首字符串为"hello",则输出的文件名称会变成hello00,hello01...等。
1 i" J9 |: `+ Y5 Y2 C7 @9 _-k或--keep-files 保留文件,就算发生错误或中断执行,也不能删除已经输出保存的文件。
3 k# j1 c& \& A-n<输出文件名位数>或--digits=<输出文件名位数> 预设的输出文件名位数其文件名称为xx00,xx01...等,如果你指定输出文件名位数为"3",则输出的文件名称会变成xx000,xx001...等。1 g5 T% a* V7 I. R' |
-q或-s或--quiet或--silent 不显示指令执行过程。
' F6 X& q' X% N-z或--elide-empty-files 删除长度为0 Byte文件。& ], j" s: r# Y$ Y% a
--help 在线帮助。$ g4 S3 w2 S; i% h8 N
--version 显示版本信息。
! y5 {# g4 v" `9 o1 S. a
: w2 z( p- m! L: j9 Z1 g7 H
$ Z/ H0 V: |3 m. ?/ L! j+ L实例
2 j8 k4 K- b% U. M: K0 S; B7 z( Z  k) f
将文本文件testfile以第 2 行为分界点切割成两份,使用如下命令:
; G6 t: r- l) ]' M* h7 F+ A* @) t6 l  S& b9 u+ J* r+ y- T/ V0 m$ J
csplit testfile 2
  D6 g5 a7 I7 H# I5 v
" y1 r% |4 m/ X; B; P! B/ o+ O! a8 _2 N! q! Y  a
testfile文件中的内容如下:6 N- X* j/ c0 f
1 L, s7 o1 }; _5 J
$ cat testfile #查看testfile 文件内容  
' {/ O% [* H# x% vhello Linux!  ( u& E+ X) R+ C# Y: a4 I; r
Linux is a free Unix-type operating system.  
- Z0 V  z- S- BThis is a Linux testfile!  
/ k0 y" t! H" z" L8 X+ ILinux & ]; V0 c' ^4 f; R! w" j
. s- Q# ^2 `" `" e
3 k1 x2 x5 Z9 {8 `
使用csplit命令,输出结果如下:* m+ i1 c0 S/ \* D: t6 S

8 ~& q& ]3 M' p' s7 v$ csplit testfile 2    R9 S/ t) s  W1 I, z, u. E0 a* G
13 #xx00文件字符个数  
' i( U5 ?  O0 P+ r9 D76 #xx01文件字符个数  
& P& S; H9 }+ y* I/ {- S# h6 O9 Y4 Q$ }; K- k- t
$ k8 h- m$ G6 o4 {7 W7 G: F# ~
其中第1 行是第一个文件xx00的字符个数,同样,第2 行为第二个文件xx01的字符个数。同时,在testfile 的同目录下将生成两个文件,文件名分别为xx00、xx01,xx00 中的内容为:
# M% K1 p: ?, U* w5 t& _5 g0 c  C3 f
$ cat xx00 #查看分割后的xx00文件内容  0 C3 i4 X5 d) B2 C- x! u
hello Linux! #testfile文件第1行的内容 : c3 k" p5 N8 t3 e. @: ?, ?% Y

* G4 K5 ]5 t1 Y" e
2 I! |& v4 b. |$ F# U" s8 @" n9 gxx01 中的内容为:; x! ?: z) m: L8 J3 h
4 B: w/ G6 j( e/ I) @% y# ]
$ cat xx01 #查看分割后的xx01文件内容  
8 K* c# S; K$ l( s& V8 D8 i6 g1 |Linux is a free Unix-type operating system. #testfile文件第2行以后的内容  
8 x; t6 v5 U5 l! C* OThis is a Linux testfile!  
  `0 N( }& G& m( h4 t0 ~! X$ ?Linux 6 W% w$ _2 Y1 W$ a5 N" d- y3 v

该用户从未签到

2#
发表于 2021-9-8 18:46 | 只看该作者
Linux csplit命令用于分割文件

该用户从未签到

3#
发表于 2021-9-8 18:47 | 只看该作者
将文件依照指定的范本样式予以切割后,分别保存成名称为xx00,xx01,xx02...的文件。若给予的文件名称为"-",则csplit指令会从标准输入设备读取数据

该用户从未签到

4#
发表于 2021-9-8 18:47 | 只看该作者
Linux csplit命令用于分割文件
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-13 04:38 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表