精华内容
下载资源
问答
  • Linux tar批量压缩打包文件

    千次阅读 2018-10-29 08:45:53
    查看文件 heb2$ls 10.unl 13.unl 17.unl 2018.sh 3EAC.unl 11.unl 14.unl 19.unl 3.unl 4.unl 12.unl 15.unl 2.unl 35.unl 4I.unl   压缩文件 flb.tar.gz是压缩后的文件名,*.unl是...

    查看文件

    heb2$ls
    10.unl    13.unl    17.unl    2018.sh   3EAC.unl  
    11.unl    14.unl    19.unl    3.unl     4.unl     
    12.unl    15.unl    2.unl     35.unl    4I.unl 

     

    压缩文件

    flb.tar.gz是压缩后的文件名,*.unl是通配文件,cvf中c是创建压缩文件

    heb2$tar -cvf flb.tar.gz *.unl
    a 10.unl 1 blocks
    a 11.unl 0 blocks
    a 12.unl 41 blocks
    a 13.unl 119 blocks
    a 14.unl 1889 blocks
    a 15.unl 97 blocks
    a 17.unl 1739 blocks
    a 19.unl 31 blocks
    
    heb2$ls *.gz
    flb.tar.gz
    

     

    展开全文
  • C#压缩打包文件

    万次阅读 2013-03-12 15:11:20
    /// 压缩和解压文件 /// public class ZipClass { /// /// 所有文件缓存 /// List files = new List(); /// /// 所有空目录缓存 /// List paths = new List(); ///
     /// <summary>
    /// 压缩和解压文件
    /// </summary>
    public class ZipClass
    {
        /// <summary>
        /// 所有文件缓存
        /// </summary>
        List<string> files = new List<string>();
    
        /// <summary>
        /// 所有空目录缓存
        /// </summary>
        List<string> paths = new List<string>();
    
        /// <summary>
        /// 压缩单个文件
        /// </summary>
        /// <param name="fileToZip">要压缩的文件</param>
        /// <param name="zipedFile">压缩后的文件全名</param>
        /// <param name="compressionLevel">压缩程度,范围0-9,数值越大,压缩程序越高</param>
        /// <param name="blockSize">分块大小</param>
        public void ZipFile(string fileToZip, string zipedFile, int compressionLevel, int blockSize)
        {
            if (!System.IO.File.Exists(fileToZip))//如果文件没有找到,则报错
            {
                throw new FileNotFoundException("The specified file " + fileToZip + " could not be found. Zipping aborderd");
            }
    
            FileStream streamToZip = new FileStream(fileToZip, FileMode.Open, FileAccess.Read);
            FileStream zipFile = File.Create(zipedFile);
            ZipOutputStream zipStream = new ZipOutputStream(zipFile);
            ZipEntry zipEntry = new ZipEntry(fileToZip);
            zipStream.PutNextEntry(zipEntry);
            zipStream.SetLevel(compressionLevel);
            byte[] buffer = new byte[blockSize];
            int size = streamToZip.Read(buffer, 0, buffer.Length);
            zipStream.Write(buffer, 0, size);
    
            try
            {
                while (size < streamToZip.Length)
                {
                    int sizeRead = streamToZip.Read(buffer, 0, buffer.Length);
                    zipStream.Write(buffer, 0, sizeRead);
                    size += sizeRead;
                }
            }
            catch (Exception ex)
            {
                GC.Collect();
                throw ex;
            }
    
            zipStream.Finish();
            zipStream.Close();
            streamToZip.Close();
            GC.Collect();
        }
    
        /// <summary>
        /// 压缩目录(包括子目录及所有文件)
        /// </summary>
        /// <param name="rootPath">要压缩的根目录</param>
        /// <param name="destinationPath">保存路径</param>
        /// <param name="compressLevel">压缩程度,范围0-9,数值越大,压缩程序越高</param>
        public void ZipFileFromDirectory(string rootPath, string destinationPath, int compressLevel)
        {
            GetAllDirectories(rootPath);
    
            /* while (rootPath.LastIndexOf("\\") + 1 == rootPath.Length)//检查路径是否以"\"结尾
            {
    
            rootPath = rootPath.Substring(0, rootPath.Length - 1);//如果是则去掉末尾的"\"
    
            }
            */
            //string rootMark = rootPath.Substring(0, rootPath.LastIndexOf("\\") + 1);//得到当前路径的位置,以备压缩时将所压缩内容转变成相对路径。
            string rootMark = rootPath + "\\";//得到当前路径的位置,以备压缩时将所压缩内容转变成相对路径。
            Crc32 crc = new Crc32();
            ZipOutputStream outPutStream = new ZipOutputStream(File.Create(destinationPath));
            outPutStream.SetLevel(compressLevel); // 0 - store only to 9 - means best compression
            foreach (string file in files)
            {
                FileStream fileStream = File.OpenRead(file);//打开压缩文件
                byte[] buffer = new byte[fileStream.Length];
                fileStream.Read(buffer, 0, buffer.Length);
                ZipEntry entry = new ZipEntry(file.Replace(rootMark, string.Empty));
                entry.DateTime = DateTime.Now;
                // set Size and the crc, because the information
                // about the size and crc should be stored in the header
                // if it is not set it is automatically written in the footer.
                // (in this case size == crc == -1 in the header)
                // Some ZIP programs have problems with zip files that don't store
                // the size and crc in the header.
                entry.Size = fileStream.Length;
                fileStream.Close();
                crc.Reset();
                crc.Update(buffer);
                entry.Crc = crc.Value;
                outPutStream.PutNextEntry(entry);
                outPutStream.Write(buffer, 0, buffer.Length);
            }
    
            this.files.Clear();
    
            foreach (string emptyPath in paths)
            {
                ZipEntry entry = new ZipEntry(emptyPath.Replace(rootMark, string.Empty) + "/");
                outPutStream.PutNextEntry(entry);
            }
    
            this.paths.Clear();
            outPutStream.Finish();
            outPutStream.Close();
            GC.Collect();
        }
    
        /// <summary>
        /// 取得目录下所有文件及文件夹,分别存入files及paths
        /// </summary>
        /// <param name="rootPath">根目录</param>
        private void GetAllDirectories(string rootPath)
        {
            string[] subPaths = Directory.GetDirectories(rootPath);//得到所有子目录
            foreach (string path in subPaths)
            {
                GetAllDirectories(path);//对每一个字目录做与根目录相同的操作:即找到子目录并将当前目录的文件名存入List
            }
            string[] files = Directory.GetFiles(rootPath);
            foreach (string file in files)
            {
                this.files.Add(file);//将当前目录中的所有文件全名存入文件List
            }
            if (subPaths.Length == files.Length && files.Length == 0)//如果是空目录
            {
                this.paths.Add(rootPath);//记录空目录
            }
        }
    
        /// <summary>
        /// 解压缩文件(压缩文件中含有子目录)
        /// </summary>
        /// <param name="zipfilepath">待解压缩的文件路径</param>
        /// <param name="unzippath">解压缩到指定目录</param>
        /// <returns>解压后的文件列表</returns>
        public List<string> UnZip(string zipfilepath, string unzippath)
        {
            //解压出来的文件列表
            List<string> unzipFiles = new List<string>();
    
            //检查输出目录是否以“\\”结尾
            if (unzippath.EndsWith("\\") == false || unzippath.EndsWith(":\\") == false)
            {
                unzippath += "\\";
            }
    
            ZipInputStream s = new ZipInputStream(File.OpenRead(zipfilepath));
            ZipEntry theEntry;
            while ((theEntry = s.GetNextEntry()) != null)
            {
                string directoryName = Path.GetDirectoryName(unzippath);
                string fileName = Path.GetFileName(theEntry.Name);
    
                //生成解压目录【用户解压到硬盘根目录时,不需要创建】
                if (!string.IsNullOrEmpty(directoryName))
                {
                    Directory.CreateDirectory(directoryName);
                }
    
                if (fileName != String.Empty)
                {
                    //如果文件的压缩后大小为0那么说明这个文件是空的,因此不需要进行读出写入
                    if (theEntry.CompressedSize == 0)
                        break;
                    //解压文件到指定的目录
                    directoryName = Path.GetDirectoryName(unzippath + theEntry.Name);
                    //建立下面的目录和子目录
                    Directory.CreateDirectory(directoryName);
    
                    //记录导出的文件
                    unzipFiles.Add(unzippath + theEntry.Name);
    
                    FileStream streamWriter = File.Create(unzippath + theEntry.Name);
    
                    int size = 2048;
                    byte[] data = new byte[2048];
                    while (true)
                    {
                        size = s.Read(data, 0, data.Length);
                        if (size > 0)
                        {
                            streamWriter.Write(data, 0, size);
                        }
                        else
                        {
                            break;
                        }
                    }
                    streamWriter.Close();
                }
            }
            s.Close();
            GC.Collect();
            return unzipFiles;
        }
    }
    


     

    展开全文
  • webpack自动压缩打包文件生成zip包

    千次阅读 2019-07-05 11:12:14
    我们经常需要在执行npm run build之后把生成的static和index.html打包压缩成一个压缩包发送给后端进行项目部署,每次都需要手动操作太过繁琐,so 有需求就要找方法… 安装插件 npm i filemanager-webpack-plugin ...

    应用场景
    我们经常需要在执行npm run build之后把生成的static和index.html打包压缩成一个压缩包发送给后端进行项目部署,每次都需要手动操作太过繁琐,so 有需求就要找方法…

    filemanager-webpack-plugin

    1. 安装npm i filemanager-webpack-plugin

    插件配置
    在build/webpack.base.config.js里加上如下代码

    const FileManagerWebpackPlugin = require('filemanager-webpack-plugin')
    new FileManagerWebpackPlugin ({  // 需要在 plugins 数组里添加
         onEnd: {
            delete: [
                 './dist/bhg-member-portal.zip', // 删除之前已经存在的压缩包
             ],
            archive: [
                 {source: './dist', destination: './dist/bhg-member-portal.zip'},
             ]
         }
       })
    

    zip-webpack-plugin

    1. GitHub地址
    2. 安装npm install --save-dev zip-webpack-plugin
    3. webpack.base.conf中进行配置
    const ZipWebpackPlugin = require('zip-webpack-plugin')
    new ZipWebpackPlugin ({
      path:path.join(__dirname,'../dist'),
      filename: 'bhg-member-portal.zip'
    })
    
    展开全文
  • zip 压缩后的文件名称(你想怎么定义这个名字都可以)后面跟上你所要压缩的文件名 压缩命令示例: zip passwd.zip passwd zhang.txt(压缩命令) 解压缩示例 unzip passwd.zip gzip/gunzip:gzip格式的...

    Linux压缩和解压缩必须对应相应的命令:

     

    zip/unzip:zip格式的压缩解压命令

    zip 压缩后的文件名称(你想怎么定义这个名字都可以)后面跟上你所要压缩的文件名

    压缩命令示例:

    zip  passwd.zip  passwd  zhang.txt(压缩命令)

    解压缩示例

    unzip passwd.zip

     

    gzip/gunzip:gzip格式的压缩解压缩命令

    压缩命令后面跟上你所要压缩的文件名

    压缩:

    gzip passwd zhang.txt

    解压缩:

    unzip passwd.zip

    bzip2/bunzip2:bzip2格式的压缩解压缩命令

    压缩命令后面跟上你所要压缩的文件名

    压缩命令示例:

    bzip2 zhang.txt

    解压缩命令示例:

    bzip2 zhang.txt

     

    tar:打包/解包操作

    tar:可以将大量的目录/文件进行打包生成一个文件,也可以再打包/解包的同时进行压缩和解压缩操作

    -c 打包

    -x 解包

    -v 打包/解包的同时显示详细信息

    -f 必备选项-打包和解包时指定压缩包名称,通常是最后一个选项(因为紧跟压缩包名称)

    -z 打包/解包的同时进行gzip格式的压缩/解压缩

    -j 打包/解包的同时进行bzip2格式的压缩/解压缩

    也就是说对多个文件进行打包压缩的命令语句(gizp压缩)如下:

    tar  -czvf  xxx.tar.gz   file1   file2....(xxx为包文件的名字,后面要带上tar.gz)后面的file1, file2....为你所要打包压缩的文件

    tar  -xzvf  xxx.tar.gz (解包的同时,压缩文件)

    bzip2压缩形式:

    tar  -cjvf  xxx.tar.bz2   file1   file2....(xxx为包文件的名字,后面要带上tar.bz2)后面的file1, file2....为你所要打包压缩的文件

    tar  -xjvf  xxx.tar.bz2 (解包的同时,压缩文件)

    展开全文
  • Linux压缩打包命令——tar、zip、unzip

    万次阅读 多人点赞 2019-08-16 18:39:08
    形成一个总的包,这样便于保存和传输,但是大小是没有变化的,压缩是指将一个或者多个大文件或者目录通过压缩算法使文件的体积变小以达到压缩的目的,可以节省存储空间,在压缩的时候通常是先打包压缩;...
  • net打包文件 net 压缩文件 使用net内置方法压缩文件
  • 主要介绍了Java实现多文件压缩打包的方法,结合实例形式分析了java实现zip文件压缩与解压缩相关操作技巧,需要的朋友可以参考下
  • java压缩批量文件打包

    2012-05-03 11:05:18
    开发中经常遇到客户要求把一堆文件转为压缩文件打包下载,ant包可以实现此功能
  • 可以用来压缩打包文件、多个文件、单个目录、多个目录。 Linux打包命令_tar tar命令可以用来压缩打包文件、多个文件、单个目录、多个目录。 常用格式: 单个文件压缩打包 tar czvf my.tar.gz file1 多个...
  • Linux——tar打包文件压缩压缩

    千次阅读 2017-04-20 14:39:45
    1.压缩文件 gzip 文件名 压缩后的文件格式: .gz2.解压缩文件 解压缩 .gz的压缩文件 gunzip 压缩文件名3.tar 打包目录 ...-x 解压常用格式:单个文件压缩打包 tar czvf my.tar file1多个文件压缩打包
  • 定时备份自动打包压缩文件
  • 可以用来压缩打包文件、多个文件、单个目录、多个目录。 Linux打包命令_tar tar命令可以用来压缩打包文件、多个文件、单个目录、多个目录。 常用格式: 单个文件压缩打包 tar czvf my.tar.gz file1 多个文件压缩...
  • 1.文件的压缩和打包概要  文件压缩,是通过压缩算法将文件的体积缩小,同时将多个文件合并至一起方便文件存放...  *.tar tar程序打包文件,并没有压缩数据  *.tar.gz 首先进行tar打包成一个文件,打包之后再使用
  • git打包压缩文件

    千次阅读 2019-10-28 16:32:37
    使用git压缩文件命令: 1、打包所有文件 打包master分枝的所有文件 $ git archive --format=zip --output master.zip master 其中,输出格式为zip,输出文件为master.zip.git支持zip和tar两种输出格式 2、打包当前...
  • 本资源包括打包的详细代码,和需要的压缩类库,下载后就可以直接用(有详细的用法)。可以打包单个文件,也可同时打包多个文件,非常实用。
  • .Net程序压缩打包助手. 把exe和dll打包成一个文件。神器呀
  • C# zip压缩文件打包与解压缩

    热门讨论 2012-09-11 17:16:10
    C# zip压缩文件打包与解压缩,代码完整,可以运行!
  • java多个文件压缩打包成zip下载

    万次阅读 2018-12-21 14:53:53
    java多个文件压缩打包成zip下载 如果实现批量操作一些文件,使之压缩打包成zip下载? 具体实现步骤如下: 设置下载文件名编码 创建zip输出流ZipOutputStream 将需要下载的文件流循环写入ZipOutputStream 关闭各个流...
  • java压缩文件,zip打包

    2013-12-23 12:13:42
    应用java来压缩需要打包文件,在系统管理中将毛哥路径或者某个文件夹压缩成zip包
  • Linux文件压缩打包

    万次阅读 2018-05-27 13:47:04
    Linux文件压缩和打包一、压缩打包介绍常见压缩文件​ ~Windows .rar .7z .zip ​ ~Linux .zip .gz .bz2 .xz .tar.gz .tar.bz2 .tar.xz文件压缩的作用:1、节省空间​ ...
  • 文件管理-Linux系统压缩打包

    千次阅读 2021-01-05 18:32:58
    windows下我们接触最多的压缩文件就是.rar格式, 但Linux有自己所特有的压缩工具 如果希望windows和Linux互相能使用的压缩工具, 建议.zip格式 压缩的好处主要有: 节省磁盘空间占用率 节省网络传输带宽消耗 网络传输...
  • webpack项目运用(一)打包压缩css文件

    千次阅读 2019-04-11 22:35:50
    在webpack里我们会遇到一些关于压缩打包css的场景歌,本文就教大家如何实现: 一. webpack解析css的loader 因为webpack没有loader的情况下只能打包js文件,所以我们需要特定的loader来打包我们的css文件. 常用的loader:...
  • gulp 压缩打包js文件、gulp方法

    千次阅读 2020-02-10 15:08:12
    gulp的方法 gulp.task(str,fn) 创建一个gulp任务 gulp.src(path) 文件来源 gulp.dest(path) 操作之后的文件到哪里去 .pipe(package) 执行一个gulp功能 gulp.watch() ... 1、压缩js文件 ...
  • 使用Java实现多个文件压缩打包

    千次阅读 2017-10-17 22:46:45
    引言  在做项目的时候经常会涉及到文件压缩,比如近期用Java Web做一个后台管理,后台有个导出功能,需要统计生成几十个excel文件,然后进行下载,如果不将这些文件进行压缩传送,耗费用户流量不说,用户浏览器...
  • Linux文件远程传输scp传输rsync传输Linux打包压缩文件tar 归档文件(把很多个文件打包成1个文件压缩和解压缩zip、unzipgz(gzip、gunzip)bz2(bzip2、bunzip2)xz(xz、unxz)归档并压缩,解压并解档 ...
  • Ant 压缩打包zip文件

    千次阅读 2014-04-29 18:21:16
    --文件打包-->  < target   name = "local-zip" >   "${local_home}/目标文件夹名.zip" >    dir = "${local_home}/myproject/" />     target > 更多配置项可以参考  ...
  • Linux文件压缩打包-1

    千次阅读 2018-01-06 00:54:14
    6.1 压缩打包介绍 1 . 压缩文件的用途 【1当磁盘中的文件太大时,使用压缩后文件大小会变小,可以节省磁盘空间。 【2 在网络传输过程中,压缩后的文件的传输速度要优于未压缩的文件,如文件在服务器上经常被人...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 189,681
精华内容 75,872
关键字:

压缩打包文件