csplit

split files based on context

TLDR

Split a file at lines 5 and 23

$ csplit [file] [5] [23]
copy

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

$ csplit [file] [5] {*}
copy

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

$ csplit -k [file] [5] {*}
copy

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

$ csplit [file] [5] -f [prefix]
copy

Split a file at a line matching a regular expression

$ csplit [file] /[regular_expression]/
copy

SYNOPSIS

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

DESCRIPTION

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-matched

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

--help

display this help and exit

--version

output version information and exit

Each PATTERN may be:

INTEGER

copy up to but not including specified line number

/REGEXP/[OFFSET]

copy up to but not including a matching line

%REGEXP%[OFFSET]

skip to, but not including a matching line

{INTEGER}

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.

REPORTING BUGS

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

COPYRIGHT

Copyright © 2020 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

SEE ALSO

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

AUTHOR

Written by Stuart Kemp and David MacKenzie.

Copied to clipboard
Coindodo