csplit command in Linux with examples
The csplit command is used to split any file into many parts as required by the user. The parts are determined by context lines. Output pieces of FILE separated by PATTERN(s) to files ‘xx00’, ‘xx01’, …, and output byte counts of each piece to standard output.
csplit [OPTION]… FILE PATTERN…
Example: Consider a text file named list.txt with contents as follows:
Now split this file into two parts (second part starting from 3rd line) using csplit command as follows:
- -f, –Prefix: It use PREFIX in place of ‘xx’.
Example: Here instead of ‘xx’ prefix ‘abc was used.
- -k, –Keep files: This option will not remove the output files on errors.
Example: This command removes all output files in case it encounters an error. This can be changed by using ‘-k’ option.
- -n, –Digits: Use given number of digits instead of 2.
Example: Here we fixed number of digits after the file name. So instead of ‘xx01‘ we get ‘xx0‘.
- -z, –elide-empty-files: Remove empty output files.
Example: This removed the empty output files.
- -s, –quiet: Does not display counts of output file sizes.
- -b, –Suffix-format: Use sprintf FORMAT instead of %02d.
- –help: To show the help message and exit.
- –version: Display the version information and exit.