如何将txt文件用shell拆分成多个?

1.(实测)按行拆分txt文件 (将50,000,000行的dddd.txt文件拆成5个文件,每个文件10,000,000行)

split -l 10000000  dddd.txt    aa(aa为拆分文件的前缀-可选)

2.其他可以参考如下内容(split  –help查询到的内容):

Usage: split [OPTION]… [INPUT [PREFIX]]
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

SIZE is an integer and optional unit (example: 10M is 10*1024*1024).  Units
are K, M, G, T, P, E, Z, Y (powers of 1024) or KB, MB, … (powers of 1000).

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
l/K/N   output Kth of N to stdout without splitting lines
r/N     like ‘l’ but use round robin distribution
r/K/N   likewise but only output Kth of N to stdout

 

 

    原文作者:小白学习指南
    原文地址: https://blog.csdn.net/limiaoiao/article/details/82419170
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞