Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Bash中将一个文件分割成每个块中有1000行的块?_Bash_Bioinformatics - Fatal编程技术网

如何在Bash中将一个文件分割成每个块中有1000行的块?

如何在Bash中将一个文件分割成每个块中有1000行的块?,bash,bioinformatics,Bash,Bioinformatics,我有一个6200行长的文件,看起来像: chrom chromStart chromEnd score a a.1 1 chr1 834359 867552 4 0.020979021 0.0000000000 2 chr1 1880283 1940830 9 0.075757576 0.0000000000 3 chr1 1960387 2064958 13 0.115093240 0.00065

我有一个6200行长的文件,看起来像:

  chrom chromStart chromEnd score           a          a.1
1  chr1     834359   867552     4 0.020979021 0.0000000000
2  chr1    1880283  1940830     9 0.075757576 0.0000000000
3  chr1    1960387  2064958    13 0.115093240 0.0006596306
4  chr1    2206040  2249092     5 0.019230769 0.0000000000
5  chr1    2325759  2408930    11 0.021296885 0.0080355001

我需要把文件分成1000行长的文件。如何做到这一点?

这听起来像是POSIX命令的一个例子:


这会将“要拆分的文件”拆分为1000行的文件(当然最后一行除外),名称将以
前缀开头。
并以
aa
ab
ac
,…

是否希望在一个文件中包含第1..1000行,在另一个文件中包含第1001..2000行,依此类推,还是只想在另一个文件中包含1000..2000行?这两种方法都是可行的(很容易做到),但您的做法不同(
sed
vs
split
)。此外,您是否需要在每个输出文件中保留标题行?问题标题与实际问题不同的典型情况。XY问题。@Jonathan Leffler,1..1000在一个文件中。1001…2000在另一个。我之所以选择这个标题,是因为如果有人回答这个问题。我可以从那里开始回答我自己的问题。你自己有没有努力解决这个问题?如果是,请说明您尝试了什么。由于您缺乏足够的努力,这个问题很可能会被否决并结案。
split -l 1000 file-to-be-split prefix.