精华内容
下载资源
问答
  • ubuntu 压缩拆分If you have an unwieldy text file that you are trying to process, splitting it in sections can sometimes help processing time, especially if we were going to importa file into a ...
    ubuntu 压缩拆分

    ubuntu 压缩拆分

    If you have an unwieldy text file that you are trying to process, splitting it in sections can sometimes help processing time, especially if we were going to import a file into a spreadsheet. Or you might want to just retrieve a particular set of lines from a file.

    如果您要处理一个笨拙的文本文件,将其分成几部分有时可以帮助您节省时间,尤其是当我们要将文件导入电子表格时。 或者,您可能只想从文件中检索一组特定的行。

    Enter split, wc, tail, cat, and grep. (don’t forget sed and awk). Linux contains a rich set of utilities for working with text files on the command line. For our task today we will use split and wc.

    输入split,wc,tail,cat和grep。 (不要忘记sed和awk)。 Linux包含大量用于在命令行上处理文本文件的实用程序。 对于今天的任务,我们将使用split和wc。

    First we take a look at our log file….

    首先,我们看一下我们的日志文件…。

    > ls -l-rw-r–r– 1 thegeek ggroup 42046520 2006-09-19 11:42 access.log

    > ls -l-rw-r–r– 1 thegeek ggroup 42046520 2006-09-19 11:42 access.log

    We see that the file size is 42MB. That’s kinda big… but how many lines are we dealing with? If we wanted to import this into Excel, we would need to keep it less than 65k lines.

    我们看到文件大小为42MB。 有点大……但是我们要处理多少行? 如果要将其导入到Excel中,则需要使其少于65,000行。

    Let’s check the amount of lines in the file using the wc utility, which stands for “word count”.

    让我们使用wc实用程序检查文件中的行数,该实用程序代表“字数”。

    > wc -l access.log146330 access.log

    > wc -l access.log146330 access.log

    We’re way over our limit. We’ll need to split this into 3 segments. We’ll use the split utility to do this.

    我们超出了极限。 我们需要将其分为3个部分。 我们将使用split实用程序执行此操作。

    > split -l 60000 access.log> ls -l

    >拆分-l 60000 access.log> ls -l

    total 79124-rw-rw-r– 1 thegeek ggroup 40465200 2006-09-19 12:00 access.log-rw-rw-r– 1 thegeek ggroup 16598163 2006-09-19 12:05 xaa-rw-rw-r– 1 thegeek ggroup 16596545 2006-09-19 12:05 xab-rw-rw-r– 1 thegeek ggroup 7270492 2006-09-19 12:05 xac

    总计79124-rw-rw-r– 1 thegeek ggroup 40465200 2006-09-19 12:00 access.log-rw-rw-r– 1 thegeek ggroup 16598163 2006-09-19 12:05 xaa-rw-rw-r – 1个thegeek ggroup 16596545 2006-09-19 12:05 xab-rw-rw-r– 1个thegeek ggroup 7270492 2006-09-19 12:05 xac

    We’ve now split our text files into 3 seperate files, each containing less than 60000 lines, which seemed like a good number to choose. The last file contains the leftover amount. If you were going to cut this particular file in half, you’d have done this:

    现在,我们将文本文件分为3个单独的文件,每个文件少于60000行,这似乎是一个不错的选择。 最后一个文件包含剩余量。 如果您打算将该特定文件切成两半,则可以这样做:

    > split -l 73165 access.log

    >拆分-l 73165 access.log

    And, that’s all there is to it.

    而且,仅此而已。

    翻译自: https://www.howtogeek.com/howto/ubuntu/split-a-text-file-in-half-or-any-percentage-on-ubuntu-linux/

    ubuntu 压缩拆分

    展开全文
  • 使用split命令拆分文件。 split -b 4000 -d -a 2 split_file split_file. -b:以文件大小拆分,默认单位M,可以通过修改后数字以及换单位来自由选择拆分文件大小,比如-b 200K -l:以文件行数拆分 -d:拆分后...

    使用split命令拆分文件。

    split -b 4000 -d -a 2 split_file split_file.

    -b:以文件大小拆分,默认单位M,可以通过修改后数字以及换单位来自由选择拆分后文件大小,比如-b 200K

    -l:以文件行数拆分

    -d:拆分后的的文件命令以数字为后缀,split_file.00,split_file.01等等

    -a:后缀的长度,默认为两位数,可以更改数字。

     

    使用cat命令来还原拆分的文件。

    cat split_file.* split_file

     

    展开全文
  • linux内核源码压缩格式: 内核版本 压缩格式 https://mirrors.edge.kernel.org/pub/linux/kernel/v3.x/ bzip2, gzip, xz https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/ gzip, ...


    linux内核源码压缩格式:
    (可以看到在3.x之后就不再使用bzip2了,因为它的 gzip< bzip2压缩比 < xz, 但又很消耗cpu, 从而就保留了xz的压缩格式,而gzip 是最通用的格式也得以保留)

    内核版本压缩格式
    https://mirrors.edge.kernel.org/pub/linux/kernel/v3.x/bzip2, gzip, xz
    https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/gzip, xz

    在这里插入图片描述在这里插入图片描述

    1, 文件: 压缩/解压缩

    • gzip, gunzip
    • bzip2, bunzip2
    • xz, unxz
    # 1, 压缩二进制文件(xz 压缩比 ~= gzip )
    [root@eadage test]# tar -xvf MySQL-5.5.62-1.el6.x86_64.rpm-bundle.tar 
    [root@eadage test]# ls
    MySQL-5.5.62-1.el6.x86_64.rpm-bundle.tar
    MySQL-client-5.5.62-1.el6.x86_64.rpm
    MySQL-devel-5.5.62-1.el6.x86_64.rpm
    MySQL-embedded-5.5.62-1.el6.x86_64.rpm
    MySQL-server-5.5.62-1.el6.x86_64.rpm
    MySQL-shared-5.5.62-1.el6.x86_64.rpm
    MySQL-shared-compat-5.5.62-1.el6.x86_64.rpm
    MySQL-test-5.5.62-1.el6.x86_64.rpm
    
    [root@eadage test]# tar -Jcvf mysql-bundle.tar.xz *.rpm 
    ...
    [root@eadage test]# ll -h
    total 432M
    -rw-r--r-- 1 root root  145M 114 22:33 MySQL-5.5.62-1.el6.x86_64.rpm-bundle.tar
    -rw-r--r-- 1 root root  144M 114 22:36 mysql-bundle.tar.xz
    ....
    

    2, 目录: 归档/解档

    tar 命令参数

    • x --extract --get [options] [pathname …]
    • -c, --create create a new archive
    wang@wang-pc:~/txt$ 
    mkdir a/{b/c,b2}
    echo 'a.txt'>a/a.txt
    echo 'b.txt'>a/b/b.txt
    echo 'b2.txt'>a/b2/b2.txt
    echo 'c.txt'>a/b/c/c.txt
    
    wang@wang-pc:~/txt$ tree  a
    a
    ├── a.txt
    ├── b
    │   ├── b.txt
    │   └── c
    │       └── c.txt
    └── b2
        └── b2.txt
    3 directories, 4 files
    
    wang@wang-pc:~/txt$ tar -cvf a.tar a
    .....
    wang@wang-pc:~/txt$ du -hs a
    32K	a
    wang@wang-pc:~/txt$ ls -lh
    total 16K
    drwxrwxr-x 4 wang wang 4.0K 114 23:25 a
    -rw-rw-r-- 1 wang wang  10K 114 23:41 a.tar
    

    3, 文件/目录: 归档压缩

    tar 的命令参数如下:

    • -j, --bzip2
    • -J, --xz
    • -z, --gzip, --gunzip --ungzip
    tar -zcvf /zxvf  xx.tar.gz  dest-dir: 通用压缩格式
    tar -jcvf /jxvf  xx.tar.bz2  dest-dir
    tar -Jcvf /Jxvf  xx.tar.xz  dest-dir: 文本压缩体积最小
    

    4, 文件拆分/合并

    • 使用场景:在文件上传大小有限制的时候,需要拆分文件来上传;等上传好后,需要合并还原文件
    • split -d -n 2 --additional-suffix=.tar.gz xx.tar.gz split_
    [root@c7 t2]# ll -h /var/log/messages
    -rw-------. 1 root root 2.4M Sep 18 13:32 /var/log/messages
    [root@c7 t2]# ls
    [root@c7 t2]# split -n 2 /var/log/messages message_
    [root@c7 t2]# ll -h
    total 2.4M
    -rw-r--r-- 1 root root 1.2M Sep 18 13:33 message_aa
    -rw-r--r-- 1 root root 1.2M Sep 18 13:33 message_ab
    
    #-d 使用数字为suffix
    [root@c7 t2]# split -n 2 -d  /var/log/messages message_
    [root@c7 t2]# ls
    message_00  message_01  message_aa  message_ab
    [root@c7 t2]# ll -h
    total 4.7M
    -rw-r--r-- 1 root root 1.2M Sep 18 13:33 message_00
    -rw-r--r-- 1 root root 1.2M Sep 18 13:33 message_01
    -rw-r--r-- 1 root root 1.2M Sep 18 13:33 message_aa
    -rw-r--r-- 1 root root 1.2M Sep 18 13:33 message_ab
    
    #文件还原==>合并为原文件
    [root@c7 t2]# cat message_0* > message1.log
    [root@c7 t2]# ll -h message1.log
    -rw-r--r-- 1 root root 2.4M Sep 18 13:36 message1.log
    
    展开全文
  • 多部分压缩 用于压缩和拆分文件/合并和解压缩文件的 PHP 类。
  • exsel文件打开打csv文件超过一定大小就打不开了,使用此工具能把大的CSV文件拆分/割裂成小的CSV文件打开
  • 该工具使用java开发。可以对超大文件进行拆分,可解决超大文件不能一次传输的问题。操作步骤:打开压缩文件,执行里面的dm.exe可以选择拆分文件,拆分完后,可以选择生成的json文件进行合并。
  • File-zip文件拆分合并

    千次阅读 2018-11-23 11:01:57
    public class FileDeal { ... * 文件分割(拆分大的zip文件为小的zip文件)  */ public static synchronized int splitZip(String fileSrc, String destSrc){ File file=new File(fileSrc); if(f...
    public class FileDeal {
         /*
          * 文件分割(拆分大的zip文件为小的zip文件)
          */
        public static synchronized int splitZip(String fileSrc, String destSrc){
            File file=new File(fileSrc);
            if(file.exists()){
                System.out.println("文件不存在!");
                return 0;
            }
            //需要拆分文件大小
            long countFileSize=file.length();
            //拆分后一个文件大小
            long oneFileSize=1024*1024*200;
            //统计zip文件被分割的个数
            int partNum=0;
            if(countFileSize%oneFileSize==0){
                partNum=(int)(countFileSize/oneFileSize);
            }else{
                partNum=(int)(countFileSize/oneFileSize)+1;
            }
            System.out.println("分割文件个数:"+partNum);
    
            InputStream in;
            try{
                in=new FileInputStream(file);
                BufferedInputStream bis=new BufferedInputStream(in);
                BufferedOutputStream bos=null;
    
                byte bytes[]=new byte[1024*1024*20];
    
                for(int i=0;i<partNum;i++){
                    String newFileSrc=destSrc+"part-"+i+".zip";
                    File newFile=new File(newFileSrc);
                    if(!newFile.getParentFile().exists()){
                        System.out.println("创建文件分割目录!");
                        newFile.getParentFile().mkdirs();
                    }
    
                    bos=new BufferedOutputStream(new FileOutputStream(new File));
                    int readSize=-1;
                    int count=0;
                    while((readSize=bis.read(bytes))!=-1){
                        bos.write(bytes, 0, readSize);
                        bos.flush();
                        count+=readSize;
                        if(count>=oneFileSize){
                            break;
                        }
                    }
                }
                bis.close();
                in.close();
                bos.close();
            }catch(Exception e){
                e.printStackTrace(); 
            }
            return partNum;
        } 
        
        
        /*
         * 合并文件
         */
        public static void  mergeFile(File...files){
            File file=new File("D:\\mergefile\\");
            if(!file.getParentFile().exists()){
                System.out.println("创建目录:");
                file.getParentFile().mkdirs();
            }
            try {
                BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(new File("D:\\mergefile\\merge123.zip")));
                BufferedInputStream bis=null;
                byte bytes[]=new byte[1024*1024*10];
                int readSize=0;
                for(int i=0;i<files.length;i++){
                    bis=new BufferedInputStream(new FileInputStream(files[i]));
                    while((readSize=bis.read(bytes))!=-1){
                        bos.write(bytes,0,readSize);
                    }
                }
                bos.close();
                bis.close();
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
        /*
         *将文件字节大小转换为KB、M、G等
         */
        public static String readableFileSize(long size){
            if(size<=0){
                return "0";
            }
            final String[] units=new String[]{"B","KB","MB","GB","TB"};
            int digitGroups=(int)(Math.log10(size)/Math.log10(1024));
            return new DecimalFormat("#,##0.#").format(size/Math.pow(1024, digitGroups))+""+units[digitGroups];
        }
    }

     

    展开全文
  • ubuntu下分割大压缩文件

    千次阅读 2018-12-14 23:27:14
    1.要分割的文件夹名:test 2.终端输入: tar -zcvf - test | split -b 15G -d -a 1 - test.tar.gz ...“15g”代表分割后每个压缩文件的大小 3.合并上面分割的压缩包 cat test.tar.gz* &gt; test.tar.gz ...
  • c++调用python接口实现压缩拆分文件功能,压缩拆分的功能都是python实现,有pythton源码,直接运行c++就可以。
  • java 大文件拆分压缩传输

    千次阅读 2019-06-25 13:34:53
    当前需求 每个文件压缩前最大为50M,超出文件限制指标在新文件中存储,...文件拆分、合并 文件拆分、合并 生成测试文件 public class GenerateFileDemo { public static void main(String[] args) throws IOEx...
  • 1.分割 -- split命令 可以指定按行数分割和按字节大小分割两种模式。 (1) 按行数分割 split -l 100 large_file.log... 文件压缩成 tar.gz tar -zcvf test.tgz old_file 4 . 解压缩 tar.gz文件 tar -zxvf test.tgz 
  • 为了解决上传网盘时单文件大小限制,或向某某公司邮箱发送文件时的文件大小限制,我们常常需要将较大的文件拆分成多个在限制大小内的小文件,进行传输后,在使用端再将多个小文件合并为一个完整的大文件进行使用。...
  • Original url:https://blog.csdn.net/xunan003/article/details/79068648有没有遇到某些...有个方法可以解决此类问题,将压缩包分成多个文件,问题就迎刃而解,这就叫:分卷压缩。如何进行分卷压缩与解压呢,有如...
  • 文件test分包压缩成10M 的文件: tar czf - test | split -b 10m - test.tar.gz 解压 将第一步分拆的多个包解压: cat test.tar.gz* | tar -xzv 参考网站 https://my.oschina.net/yysue/blog/1815340 ...
  • unzip testall.zip`# 1.先合并文件 cat test.z* &gt; testall.zip # 2....有个方法可以解决此类问题,将压缩包分成多个文件,问题就迎刃而解,这就叫:分卷压缩。 如何进行分卷压缩与解压呢,有如下...
  • 文件yocto.log的处理为例 源文件:yocto.log 压缩:yocto.log.tar.gz $ tar -czvf yocto.log.tar.gz yocto.log 拆分:yocto.log.tar.gz.00,yocto.log.tar.gz.01,yocto.log.tar.gz.02,yocto.log.tar.gz....
  • 在用百度网盘备份资料时由于文件过大而无法上传...2、在弹出的窗口中,此处需要在“常规”中进行一些参数,其他按钮可以设置其他的参数,但是我们压缩文件只需要在常规中设置就可以了,在“压缩文件格式”选项中选择第
  • 主要是现在生产上所有表的建表语句都存在一个文件中,这样,不利于版本更新的控制,所以要把这个文件拆分为一个建表语句一个文件,且要以表名作为文件名,粗略估计一下,有四千多张表。 OK,目标明确;第一反应想到...
  • java文件分割压缩

    2012-03-08 10:48:27
    java 版的文件分割压缩 可以对大文件进行拆分文件大小可定义
  • 目录1,在linux 将文件拆分2,解压缩多个文件3,总结 本文的原文连接是: https://blog.csdn.net/freewebsys/article/details/104256596 未经博主允许不得转载。 博主地址是:http://blog.csdn.net/freewebsys 1,在...
  • pdf文件拆分为单个pdfArticle Update 13-March-2020: I removed the full source code and the code snippets. The article that remains should act as a "design roadmap" for members who want to write the code...
  • 1、压缩文件 非打包 tar -czvf test.tar.gz test.sql //压缩 test.sql文件为test.tar.gz(会保留原文件) tar -czvf test.tar.gz test/ //压缩目录下的文件 (不过目录的压缩效果就一般了) 2、列出压缩文件内容 tar ...
  • 文件分割成小文件文件压缩(zlib)
  • 目录一、文件压缩二、文件分割三、文件合并四、文件解压...-c:建立一个压缩文件指令; -v:压缩过程中是否显示文件; -f :使用档名; 二、文件分割 split -b 40M -d -a 2 test.tar.gz test.tar.gz. 参数含义: -...
  • 如何从Linux终端压缩或解压缩文件

    千次阅读 2020-09-21 12:38:12
    您可以使用一些常见Linux终端命令创建一个zip归档文件或从一个文件解压缩文件。 ZIP压缩存档文件格式 (The ZIP Compressed Archive File Format) Thanks to the dominance of the ZIP format in the Windows realm,...
  • Spark读取压缩文件性能分析

    千次阅读 2019-08-23 14:18:49
    而Spark往往以HDFS文件为输入,为保持兼容性,Spark支持多种格式文件读取,大数据场景下,性能瓶颈往往是IO,而不是CPU算力,所以对文件压缩处理成为了很必要的手段。Spark为提供兼容性,同时支持多种压缩包直接...
  • bz2压缩文件相关命令

    2020-03-05 10:42:38
    https://www.runoob.com/linux/linux-comm-bzip2.html
  • 由于设置压缩文件名为“分割文件”,所以WinRAR会将选中的文件以分割文件.part1、分割文件.part2、分割文件.part3……等文件压缩存放在一个文件夹下。 3,合并分割文件 在生成这些小的分割文件后,只要将这些...
  • 轻松易用的PDF工具,可用于编辑、转换、合并、拆分压缩PDF文件。可与Gmail整合。 【插件开发者】 @sumizuko9299 【插件更新】 2021-01-13 09:40:53 【插件版本】 1.1 【插件标签】 热门 工具 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 41,312
精华内容 16,524
关键字:

压缩文件怎么拆分