Scroll to navigation

csplit(1) General Commands Manual csplit(1)

NAME

csplit - Split a file into sections determined by context lines

SYNOPSIS

csplit [-b|--suffix-format] [-f|--prefix] [-k|--keep-files] [--suppress-matched] [-n|--digits] [-q|--quiet] [-z|--elide-empty-files] [-h|--help] [-V|--version] <file> <pattern>

DESCRIPTION

Split a file into sections determined by context lines

OPTIONS

use sprintf FORMAT instead of %02d
use PREFIX instead of 'xx'
do not remove output files on errors
suppress the lines matching PATTERN
use specified number of digits instead of 2
do not print counts of output file sizes
remove empty output files
Print help
Print version

EXTRA

Output pieces of FILE separated by PATTERN(s) to files 'xx00', 'xx01', ..., and output byte counts of each piece to standard output.

VERSION

v(uutils coreutils) 0.7.0

EXAMPLES

Split a file in two parts, starting the second one at line 10:

csplit path/to/file 10

Split a file in three parts, starting the latter parts in lines 7 and 23:

csplit path/to/file 7 23

Start a new part at every 5th line (will fail if number of lines is not divisible by 5):

csplit path/to/file 5 {*}

Start a new part at every 5th line, ignoring exact-division error:

csplit [-k|--keep-files] path/to/file 5 {*}

Split a file above line 5 and use a custom prefix for the output files (default is `xx`):

csplit path/to/file 5 [-f|--prefix] prefix

Split a file above the first line matching a `regex` pattern:

csplit path/to/file /regex/

The examples are provided by the tldr-pages project <https://tldr.sh> under the CC BY 4.0 License. Please note that, as uutils is a work in progress, some examples might fail.

csplit (uutils coreutils) 0.7.0