加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux下split 命令使用介绍

发布时间:2022-06-11 16:29:03 所属栏目:Linux 来源:互联网
导读:从函数层面上来看是对文件进行切割了,我们可以使用split命令进行文件的很多操作,下现来看几个Linux下split 命令使用例子. 按大小切割,每100M切割:split -b 100m filename 按行数切割,每100w行切割,并带上前缀:split -l10000000 pc.txt i_ 合并:cat x* pc.txt
  从函数层面上来看是对文件进行切割了,我们可以使用split命令进行文件的很多操作,下现来看几个Linux下split 命令使用例子.
 
  按大小切割,每100M切割:split -b 100m filename
 
  按行数切割,每100w行切割,并带上前缀:split -l10000000 pc.txt i_
 
  合并:cat x* > pc.txt
 
  补充说明:split可将文件切成较小的文件,预设每1000行会切成一个小文件
 
  参 数:
 
  -l<行数>   指定每多少行就要切成一个小文件
 
  -b<字节>   指定每多少字就要切成一个小文件。支持单位:m,k
 
  -C<字节>   与-b参数类似,但切割时尽量维持每行的完整性
 
  ?help   显示帮助
 
  ?version   显示版本信息
 
  [输出文件名]  设置切割后文件的前置文件名,split会自动在前置文件名后再加上编号.
 
  实例1、以每个文件1000行分割
 
  split命令分割文件成每个文件1000行,并且文件名依次为 [前缀]aa,[前缀]ab,[前缀]ac等,默认的前缀是X,每个文件的行数为1000行,命令如下:
 
  $ split mylog
  $ wc -l *
       4450 mylog
       1000 xaa
       1000 xab
       1000 xac
       1000 xad
        450 xae
  实例2、以每个文件20MB分割
 
  分割文件为多个20MB的文件,附带-b选项命令如下:
 
  $ split -b 20M logdata
   
  $ ls -lh | tail -n +2
   
   -rw------- 1 sathiya sathiya  20M Jul 25 19:20 xad
  //phpfensi.com
  -rw------- 1 sathiya sathiya  20M Jul 25 19:20 xae
   
  -rw------- 1 sathiya sathiya 1.6M Jul 25 19:20 xaf
  实例3、以每个文件50MB指定前缀分割
 
  使用--bytes选项把文件分割成多个50MB的文件,--bytes类似-b选项,在第二个参数指定前缀.
 
  $ split --bytes=50M logdata mydatafile
   
  $ ls -lh
   
  total 204M
   
  -rw------- 1 sathiya sathiya 102M Jul 25 18:47 logdata
   
  -rw------- 1 sathiya sathiya  50M Jul 25 19:23 mydatafileaa
   
  -rw------- 1 sathiya sathiya  50M Jul 25 19:23 mydatafileab
   
  -rw------- 1 sathiya sathiya 1.6M Jul 25 19:23 mydatafileac
  实例4、基于行数分割文件
 
  使用-l选项指定行数来把文件分割成多个行数相同的文件.
 
  $ wc -l testfile
   
  2591 testfile
   
  $ split -l 1500 testfile importantlog
   
  $ wc -l *
   
    1500 importantlogaa
   
    1091 importantlogab
   
    2591 testfile
  实例5、以数字后缀命名分割文件
 
  使用-d选项可以指定后缀为数字,如00,01,02..,而不是aa,ab,ac.
 
  $ split -d testfile
   
  $ ls
   
  testfile  x00  x01  x02
  可用选项
 
  短选项 长选项 选项描述
 
  -b --bytes=SIZE SIZE 值为每一输出档案的大小,单位为 byte。
 
  -C --line-bytes=SIZE 每一输出档中,单行的最大 byte 数。
 
  -d --numeric-suffixes 使用数字作为后缀。
 
  -l --lines=NUMBER NUMBER 值为每一输出档的列数大小。
 
  合并cat使用方法
 
  cat命令
 
  语法:cat [-AbeEnstTuv] [--help] [--version] fileName
 
  -n 或 ?number 由 1 开始对所有输出的行数编号
 
  -b 或 ?number-nonblank 和 -n 相似,只不过对于空白行不编号
 
  -s 或 ?squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
 
  -v 或 ?show-nonprinting
 
  #cat常用功能
   
  #一次显示整个文件
   
  cat   filename
   
  #创建一个文件,只能创建新文件,不能编辑已有文件
   
  cat  >  filename
   
  #将几个文件合并为一个文件。
   
  cat   file1   file2  > file
  所以上面的示例中将分割文件合并,可以使用:
 
  #合并
   
  cat a.tar.gz.* > a.tar.gz
   
  #合并并解压
   
  cat a.tar.gz.*  | tar -zxv

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读