Wednesday, April 11, 2007

Split files in Linux

Split a file into pieces.

SYNTAX

split [-linecount | -l linecount ] [ -a suffixlength ] [file [name] ]

split -b n [k | m] [ -a suffixlength ] [ file [name]]

-linecount | -l linecount Number of lines in each piece. Defaults to 1000 lines.
-a suffixlength Use suffixlength letters to form the suffix portion of the filenames of the split file. If -a is not specified, the default suffix length is 2. If the sum of the name operand and the suffixlength option-argument would create a filename exceeding NAME_MAX bytes, an error will result; split will exit with a diagnostic message and no files will be created.
-b n Split a file into pieces n bytes in size.
-b n k Split a file into pieces n*1024 bytes in size.
-b n m Split a file into pieces n*1048576 bytes in size.
file The path name of the ordinary file to be split. If no input file is given or file is -, the standard input will be used.
name The prefix to be used for each of the files resulting from the split operation. If no name argument is given, x will be used as the prefix of the output files. The combined length of the basename of prefix and suffixlength cannot exceed NAME_MAX bytes; see OPTIONS.

EXAMPLES

split -b 22 newfile.txt new - would split the file "newfile.txt" into three separate files called newaa, newab and newac each file the size of 22.

split -l 300 file.txt new - would split the file "newfile.txt" into files beginning with the name "new" each containing 300 lines of text each



source here

2 comments:

Raja said...

how abt merge

Hunter said...

to merge you can use: cat /file1 /file2..n > /merged-file