split (1)
Quick Reference
Split a file into pieces.
- Split a file, each split having 10 lines (except the last split):
split -l {{10}} {{filename}}
- Split a file into 5 files. File is split such that each split has same size (except the last split):
split -n {{5}} {{filename}}
- Split a file with 512 bytes in each split (except the last split; use 512k for kilobytes and 512m for megabytes):
split -b {{512}} {{filename}}
- Split a file with at most 512 bytes in each split without breaking lines:
split -C {{512}} {{filename}}
NAME
split - split a file into piecesSYNOPSIS
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
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