美文网首页
如何按照行多核加速分割200g大文件?

如何按照行多核加速分割200g大文件?

作者: 可能性之兽 | 来源:发表于2022-01-24 16:06 被阅读0次

    正常来说一般分割文件只需要用shell自带的split

    split -l 2000 Clean.short.fa -d -a 4 test
    
    split -l 2000 Clean.short.fa -d -a 4 test --verbose
    

    这个是最简单的分割方式
    但是当达到一定数量级的时候,,比如220g的时候,分割的效率非常慢,比如我试着按照1百万行分割文件,结果竟然要11个小时

    如果单核的话实在太慢,能不能使用多核加速?但谷歌找了半天,竟然没有找到合适的方式去加速(也有,但是是用java写的,暂时不是很会java),去多核分割,那么只能自己动手了,而sed是个很好的工具

    sed按照行的位置进行提取
      sed -n '1,1000000p' Clean.short.fa > test
    
    循环的方式
    for i in `seq 1 30 100`;do echo $i;val=`expr $i + 30`;echo $val;done
    1
    31
    31
    61
    61
    91
    91
    121
    

    那么只需要进行&和wait多核运行就行了,理论上可行,但是实际上能不能成?毕竟我已经按照前面的简单方式在分割了,就留给以后探索吧。

    相关文章

      网友评论

          本文标题:如何按照行多核加速分割200g大文件?

          本文链接:https://www.haomeiwen.com/subject/fmvbhrtx.html