split
split files into pieces
TLDR
Split a file, each split having 10 lines (except the last split)
Split a file into 5 files. File is split such that each split has same size (except the last split)
Split a file with 512 bytes in each split (except the last split; use 512k for kilobytes and 512m for megabytes)
Split a file with at most 512 bytes in each split without breaking lines
SYNOPSIS
split [OPTION]... [FILE [PREFIX]]
DESCRIPTION
Output pieces of FILE to PREFIXaa, PREFIXab, ...; default size is 1000 lines, and default PREFIX is 'x'.
With no FILE, or when FILE is -, read standard input.
Mandatory arguments to long options are mandatory for short options too.
- -a, --suffix-length=N
-
generate suffixes of length N (default 2)
- --additional-suffix=SUFFIX
-
append an additional SUFFIX to file names
- -b, --bytes=SIZE
-
put SIZE bytes per output file
- -C, --line-bytes=SIZE
-
put at most SIZE bytes of records per output file
- -d
-
use numeric suffixes starting at 0, not alphabetic
- --numeric-suffixes[=FROM]
-
same as -d, but allow setting the start value
- -x
-
use hex suffixes starting at 0, not alphabetic
- --hex-suffixes[=FROM]
-
same as -x, but allow setting the start value
- -e, --elide-empty-files
-
do not generate empty output files with '-n'
- --filter=COMMAND
-
write to shell COMMAND; file name is $FILE
- -l, --lines=NUMBER
-
put NUMBER lines/records per output file
- -n, --number=CHUNKS
-
generate CHUNKS output files; see explanation below
- -t, --separator=SEP
-
use SEP instead of newline as the record separator; '\0' (zero) specifies the NUL character
- -u, --unbuffered
-
immediately copy input to output with '-n r/...'
- --verbose
-
print a diagnostic just before each output file is opened
- --help
-
display this help and exit
- --version
-
output version information and exit
The SIZE argument is an integer and optional unit (example: 10K is 10*1024). Units are K,M,G,T,P,E,Z,Y (powers of 1024) or KB,MB,... (powers of 1000). Binary prefixes can be used, too: KiB=K, MiB=M, and so on.
CHUNKS may be:
- N
-
split into N files based on size of input
- K/N
-
output Kth of N to stdout
- l/N
-
split into N files without splitting lines/records
- l/K/N
-
output Kth of N to stdout without splitting lines/records
- r/N
-
like 'l' but use round robin distribution
- r/K/N
-
likewise but only output Kth of N to stdout
REPORTING BUGS
GNU coreutils online help:
<https://www.gnu.org/software/coreutils/>
Report any translation bugs to
<https://translationproject.org/team/>
COPYRIGHT
Copyright © 2022 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/split> or available locally via: info '(coreutils) split invocation'
AUTHOR
Written by Torbjorn Granlund and Richard M. Stallman.