CentOS 里切割大文件的命令如下:

NAME
split – split a file into pieces
SYNOPSIS
split [OPTION]… [INPUT [PREFIX]]
DESCRIPTION
Output  fixed-size pieces of INPUT to PREFIXaa, PREFIXab, …; default size is 1000 lines, and default PREFIX is ‘x’.  With no INPUT, or when INPUT 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 lines per output file
-d, –numeric-suffixes[=FROM]
use numeric suffixes instead of alphabetic; FROM changes the start value (default 0)
-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 per output file
-n, –number=CHUNKS
generate CHUNKS output files; see explanation below
-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

常用选项说明如下:

  • -a : 指定后缀长度
  • -b : 每个文件多少字节
  • -d : 使用数字后缀而不是字母
  • -l : 指定每个文件的行数

比如我想让后缀长度为 2,即 -a 2。用数字后缀 -d。每个文件 10M,即 -b 10m。命令可以设计如下:


  1. split -a 2 -d -b 10m /var/lib/mysql/general.log nowamagic

会在 /root 文件夹下生成下面的切割文件:


  1. nowamagic00
  2. nowamagic01
  3. nowamagic02
  4. nowamagic03
  5. nowamagic04
  6. nowamagic05
  7. nowamagic06
  8. nowamagic07
  9. nowamagic08
  10. nowamagic09

除了最后一个文件不是10M(有可能恰好10M,不过几率很小),其它都是。

Leave a Reply

Your email address will not be published. Required fields are marked *