zoukankan      html  css  js  c++  java
  • linux切割文件【split命令详解】

    linux查看帮助

    [tomcat-nohup]$ split --help
    用法:split [选项]... [输入 [前缀]]
    将输入内容拆分为固定大小的分片并输出到"前缀aa""前缀ab",...;
    默认以 1000 行为拆分单位,默认前缀为"x"。如果不指定文件,或
    者文件为"-",则从标准输入读取数据。
    
    长选项必须使用的参数对于短选项时也是必需使用的。
      -a, --suffix-length=N    指定后缀长度为N (默认为2)
      -b, --bytes=大小        指定每个输出文件的字节大小
      -C, --line-bytes=大小    指定每个输出文件里最大行字节大小
      -d, --numeric-suffixes     使用数字后缀代替字母后缀
      -l, --lines=数值        指定每个输出文件有多少行
          --verbose        在每个输出文件打开前输出文件特征
          --help        显示此帮助信息并退出
          --version        显示版本信息并退出
    
    SIZE 可以是一个可选的整数,后面跟着以下单位中的一个:
    KB 1000,K 1024,MB 1000*1000,M 1024*1024,还有 G、T、P、E、Z、Y。

    使用实例:

    1.(按文件大小分割)比如我想将一个log文件切割成每个1M大小,后缀是2位数字结尾的子文件,子文件以child开头,则

    split -a 2 -d -b 1M app.log.10 child
    -a 2  后缀是2位
    -d  后缀是数字
    -b 1M 每个文件最大1M
    tomcat-bankgw-app.log.10 child     需要切割的文件是tomcat-bankgw-app.log.10,生成的子文件前缀是 "child"

    结果如下:

    2.(按行数做分割)将一个文件分割成每1万行一个文件,后缀是2位,子文件以child开头

    split -a 2 -l 10000 app.log child
    -a 2  后缀是2位
    -l 10000  每10000行一个文件
    tomcat-bankgw-app.log.10 child     需要切割的文件是tomcat-bankgw-app.log.10,生成的子文件前缀是 "child"

     切割结果:

    注意:此次结尾是字母排序,而不是数字了。这是默认的方式。

    ------------Mac的split命令---------

    $ split --help
    split: illegal option -- -
    usage: split [-a sufflen] [-b byte_count] [-l line_count] [-p pattern]
                 [file [prefix]]

    mac的这个和linux的相比,最大的区别就是不能以数字作为后缀了。其他基本一致

  • 相关阅读:
    Python3 基本数据类型
    C语言使用以及其它语言经常出的错误
    Deleting array elements in JavaScript
    postgresql 导出建表语句的方法-类似describe table
    什么是分布式系统(通俗易懂的说法)
    什么是分布式系统,分布式系统例子?
    【转】Linux cp -a用法
    [转]Go基础之锁的初识
    fabricJs使用系列(一)
    chrome 的onbeforeunload事件没有触发
  • 原文地址:https://www.cnblogs.com/andong2015/p/11008778.html
Copyright © 2011-2022 走看看