csplit (1)

Quick Reference

Split a file into pieces. This generates files named "xx00", "xx01", and so on.

  • Split a file at lines 5 and 23:

csplit {{file}} {{5}} {{23}}

  • Split a file every 5 lines (this will fail if the total number of lines is not divisible by 5):

csplit {{file}} {{5}} {*}

  • Split a file every 5 lines, ignoring exact-division error:

csplit -k {{file}} {{5}} {*}

  • Split a file at line 5 and use a custom prefix for the output files:

csplit {{file}} {{5}} -f {{prefix}}

  • Split a file at a line matching a regular expression:

csplit {{file}} /{{regex}}/


csplit - split a file into sections determined by context lines


csplit [ OPTION]... FILE PATTERN...


Output pieces of FILE separated by PATTERN(s) to files 'xx00', 'xx01', ..., and output byte counts of each piece to standard output.
Read standard input if FILE is -
Mandatory arguments to long options are mandatory for short options too.
-b, --suffix-format=FORMAT
use sprintf FORMAT instead of %02d
-f, --prefix=PREFIX
use PREFIX instead of 'xx'
-k, --keep-files
do not remove output files on errors
suppress the lines matching PATTERN
-n, --digits=DIGITS
use specified number of digits instead of 2
-s, --quiet, --silent
do not print counts of output file sizes
-z, --elide-empty-files
remove empty output files
display this help and exit
output version information and exit

Each PATTERN may be:

copy up to but not including specified line number
copy up to but not including a matching line
skip to, but not including a matching line
repeat the previous pattern specified number of times
repeat the previous pattern as many times as possible
A line OFFSET is a required '+' or '-' followed by a positive integer.


Written by Stuart Kemp and David MacKenzie.


GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Report csplit translation bugs to <https://translationproject.org/team/>


Full documentation at: <https://www.gnu.org/software/coreutils/csplit>
or available locally via: info '(coreutils) csplit invocation'


GNU coreutils 8.29.13-0a854
Source updated
December 2, 2018
Page created
February 9, 2018
Page generated
December 2, 2018