Articles of 压缩

只解压缩特定的扩展名

我有一个zip文件夹包含.jpg,.png,.gif图像的目录。 我想解压每个档案,只把图像放在一个文件夹中,档案的名称。 所以: files/archive1.zip files/archive2.zip files/archive3.zip files/archive4.zip 打开archive1.zip – 以sunflower.jpg,rose_sun.gif。 制作文件夹files / archive1 /并将图像添加到该文件夹​​,以便files / archive1 / folder1.jpg,files / archive1 / rose_sun.gif。 对每个存档执行此操作。 我真的不知道如何做到这一点,所有的build议都是值得欢迎的。 我有超过600个档案,一个自动解决scheme将是一个救生员,最好是一个Linux解决scheme。

如何使用Java创build一个非常具体的zip文件结构

我正在开发软件以集成到传统系统中,在该系统中,我将zip文件发送到FTP服务器,而传统系统则定期将文件转储到文件夹“Completed”或“Maybe_corrupted”中进行扫描。 我的文件被系统地转储到“maybe_corrupted”文件夹中。 经过调查,似乎这是由于zip文件的结构。 如果我将文件从FTP下载到Windows计算机上,则将所有zip文件(ZIP文件中都有zip文件)解压缩,然后将文件重新压缩成与旧版程序接受文件相同的configuration。 具体来说,我的问题是 – 我怎么能参数化java.util.zip,我应该修改哪些参数使其更接近默认的Windows压缩实用程序? 文件比较 正如Tobias Otto所build议的那样,我使用了文件比较器( UltraCompare )来比较2个二进制文件: 最初从FTP下载并被遗留系统拒绝的文件(左) 被接受的解压缩重新压缩的文件(右) 简单地比较这些字节,显然这些文件是不一样的。 请注意,红色字节是差异,灰色是相似的: 邮编详情 正如David Duponchel所build议的那样,我使用zipdetails来提取每个文件的结构。 很明显,这是一个非常强大的工具,但我不确定如何解释输出,正如使用指南中所述,输出引用了这个文档 。 原始文件: 00000 LOCAL HEADER #1 04034B50 00004 Extract Zip Spec 14 '2.0' 00005 Extract OS 00 'MS-DOS' 00006 General Purpose Flag 0808 [Bits 1-2] 0 'Normal Compression' [Bit 3] 1 'Streamed' [Bit 11] 1 […]

zip -P命令不能用来创build密码保护zip文件

首先,我创build了一个脚本,用于创build特定目录的zip文件,然后从工作正常的目录中删除除zip之外的所有文件。 但是现在我在脚本中实现了zip -P密码命令,使密码保护不起作用, 当我试图提取文件下载后,它是提取而不询问任何密码。 请让我正确的告诉我我在做什么错。 这是我试图做到这一点: exec('cd ' . escapeshellarg($directory_location) . ' ; zip -r ' .escapeshellarg($directory_location).'/'.escapeshellarg($zipname) . ' * ; '.$command.' '.escapeshellarg($zipname).' chmod 777 '.escapeshellarg($zipname).'; find . -type f -not -name \''.escapeshellarg($zipname).'\' -exec rm \{\} \; ' ); 这是输出: cd '/home/example/public_html/downloads/9c1f97ab931b9f4dc461c164f119a340/20' ; zip -r '/home/example/public_html/downloads/9c1f97ab931b9f4dc461c164f119a340/20'/'Xm18u_download.zip' * ; zip -P 'testPassword' '/home/example/public_html/downloads/9c1f97ab931b9f4dc461c164f119a340/20'/'Xm18u_download.zip' 'Xm18u_download.zip' ; 'Xm18u_download.zip' […]

如何压缩文件夹没有完整的path

首先我不是哪个是正确的stackExchange网站发布这个问题,如果问题是其他堆栈网站,请删除我的问题。 现在让我们来谈谈这个问题:这种情况是我有一个文件位于: /home/user/public_html/folder-one/folder-two/folder-three/file.php文件必须创build文件夹/folder-one包含/folder-one所有文件和子文件/folder-one 。 我使用系统函数(exec(),shell_exec()或system())创build存档,并且它工作得很完美。 我的代码是: <?php $output = 'zip -rq my-zip.zip /home/user/public_html/folder-one -x missthis/\*'; shell_exec($output); ?> 但是,当我下载并打开存档时,存档包括子文件夹/home ; /user ; /public_html但这个文件夹是完全不需要的,我想知道如何创buildzip没有他们。 当我尝试这样的事情$output = 'zip -rq my-zip.zip ../../../folder-one -x missthis/\*'; 但是当我打开文件夹(基于Windows 7的操作系统)时,文件夹的名称是../folder-one 后记:如果有人给我正确的 $output 基于Windows的托pipe计划制作拉链 将会更好 。 最好的问候,乔治!

分别Gzip多个文件并保留原始文件

我正在寻找gzip多个文件(到多个.gz文件)在一个目录中,同时保留原件。 我可以使用这些命令来执行单个文件: find . -type f -name "*cache.html" -exec gzip {} \; 要么 gzip *cache.html 但是既不保留原文。 我试过了 find . -type f -name "*cache.html" -exec gzip -c {} > {}.gz 但只有一个{} .gz文件。 有一个简单的方法来做到这一点?

如何比较两个tarball的内容

我想告诉两个tarball文件是否包含文件名和文件内容相同的文件,不包括date,用户,组等元数据。 但是有一些限制:第一,我无法控制制作tar文件时是否包含元数据,实际上tar文件中总是包含元数据,所以直接比较两个tar文件是行不通的。 其次,由于一些tar文件太大,我不能把它们解压到一个临时目录中,并逐个比较所包含的文件。 (我知道如果我可以将file1.tar解压到file1 /中,我可以通过在文件/中调用'tar -dvf file2.tar'来比较它们,但是我通常无法承受其中的一个) 任何想法如何我可以比较两个tar文件? 如果能在SHELL脚本中完成,会更好。 另外,有没有办法获得每个子文件的校验和,而实际上没有解压缩一个tarball? 谢谢,

为什么同一个文件的两个tarball的md5哈希值不同?

我可以跑: echo "asdf" > testfile tar czf a.tar.gz testfile tar czf b.tar.gz testfile md5sum *.tar.gz 事实certificate, a.tar.gz和b.tar.gz有不同的md5散列。 这是真的,他们是不同的,这diff -u a.tar.gz b.tar.gz证实。 我需要传入哪些额外的标志以使其输出在相同input的情况下随时间变化一致?

邮编说明绝对path,但只保留其中的一部分

zip -r 1.zip /home/username/the_folder 在这里,当我解压缩1.zip ,它会创build/home/username/the_folder ,从我解压从任何文件夹。 我如何压缩,说明完整的绝对path,但使zip只包含文件夹结构开始,在这种情况下,例如, /home/username ? 这样我可以在任何我想要的path,解压,它只会创buildthe_folder ,而不是/home/username/the_folder 。

zip和解压缩文件c ++

我想编写将文件夹压缩成.zip文件的代码,或将.zip文件解压缩到文件夹中。 我相信我需要一些支持它的图书馆,对吗? 如果是的话,我应该使用一个特定的图书馆吗? 我想在Linux机器上用C ++编写代码(Ubuntu)。 谢谢您的帮助。

curl命令返回http / 1.1 406不可接受的错误

我正在使用下面的命令行curl知道我的网站是否支持压缩和caching curl –head –compress http://www.mysite.com 它返回以下结果 Http://1.1 406 Not Acceptable Date: Wed, 28 Dec 2011 07:41:32 GMT Server: Apache Content-Type: text/html; charset-iso-8859-1 你对这个问题有什么看法? 谢谢