Questions tagged «compression»

缩小(压缩)和还原(解压缩)数据。

9
如何使用ffmpeg缩小视频的大小?
我如何ffmpeg通过降低质量来减小视频的大小(自然而然地尽可能最小化,但是我需要它在没有足够可用空间的移动设备上运行)? 我忘了写一件事。当视频可以使用字幕(* .srt或* .sub)时,我也希望将其转换为适合转换后的视频文件的参数。

6
如何通过.gz文件递归grep?
我正在使用脚本定期下载我的gmail邮件,该邮件将原始.eml压缩为.gz文件。该脚本每天创建一个文件夹,然后将每条消息压缩到其自己的文件中。 我想要一种在档案库中搜索“字符串”的方法。 仅Grep似乎无法做到这一点。我也尝试过SearchMonkey。


10
如何在UNIX中解压缩zlib数据?
我已经在Python中创建了zlib压缩的数据,如下所示: import zlib s = '...' z = zlib.compress(s) with open('/tmp/data', 'w') as f: f.write(z) (或单行中壳:echo -n '...' | python2 -c 'import sys,zlib; sys.stdout.write(zlib.compress(sys.stdin.read()))' > /tmp/data) 现在,我想解压缩shell中的数据。既不zcat也不uncompress工作: $ cat /tmp/data | gzip -d - gzip: stdin: not in gzip format $ zcat /tmp/data gzip: /tmp/data.gz: not in gzip format $ …
106 compression  gzip 

8
为什么我要压缩单个文件?
在我公司,我们将本地开发数据库快照下载为db.dump.tar.gz文件。压缩是有道理的,但压缩包仅包含一个文件(db.dump)。 归档单个文件有什么意义,还是.tar.gz这样一个常见的习惯?为什么不只是.gz呢?
101 tar  compression  archive 

2
压缩当前目录中的所有内容
我想将所有文件(包括当前目录中的文件和文件夹)压缩并打包到Ubuntu上的单个ZIP文件中。 什么是最方便的命令(如果需要的话,还有需要安装的工具名称)? 编辑:如果我需要排除一个文件夹或多个文件怎么办?

6
用零清除未使用的空间(ext3,ext4)
如何用零清除未使用的空间?(ext3,ext4) 我在寻找比...更聪明的东西 cat /dev/zero > /mnt/X/big_zero ; sync; rm /mnt/X/big_zero 像FSArchiver一样,它正在寻找“已用空间”,而忽略未使用但相对的站点。 目的:我想压缩分区映像,因此强烈建议使用零填充未使用的空间。 顺便说一句。对于btrfs:用零清除未使用的空间(btrfs)

6
是否可以即时挂载gzip压缩的dd映像?
我喜欢第一次备份系统时创建映像备份。第一次之后,我使用rsync进行增量备份。 我通常的映像备份如下: 安装并清零空白空间: dd if=/dev/zero of=temp.dd bs=1M rm temp.dd 压缩驱动器时将其挂载并dd dd if=/dev/hda conv=sync,noerror bs=64K | gzip -c > /mnt/sda1/hda.ddimg.gz 为了使系统恢复正常,我通常会 gunzip -c /mnt/sda1/hda.img.gz | dd of=/dev/hda conv=sync,noerror bs=64K 这确实很简单,可以节省“整个驱动器”,但实际上只是节省了使用空间。 这是问题所在。可以说我执行了上述操作,但是没有在干净的系统上执行此操作,并且没有使rsync备份足够快地进行,并且映像上有我要访问的文件。假设我没有存储空间,实际上没有将图像解压缩并dd到驱动器上,但想挂载该图像以从中取出单个文件。...这可能吗? 通常,不会压缩dd映像,这将允许您使用-o loop... 挂载映像,但这不是我的情况... 关于动态安装压缩img的任何建议? 会使用AVFS来“挂载” gz文件,然后挂载内部dd.img工作吗(我认为不是...但是需要验证...)?


1
bzip1发生了什么?
bzip2已经成为事实上的标准,已经有很多年了。bzip2到目前为止,我本人已经键入了数千次命令,这让我感到奇怪-bzip或bzip1发生了什么?Google似乎没有告诉我太多有关它的信息,听起来这可能是一个有趣的历史课。


3
-C标志在scp中的作用是什么?
我总是使用rsync或scp以便从/向远程计算机复制文件。最近,我在scp(man scp)手册中发现了该标志-C -C Compression enable. Passes the -C flag to ssh(1) to enable compression. 在发现此标志之前,我习惯于zipbefore和then scp。 仅使用-Czip和解压缩是否一样有效?什么时候使用一个或另一个过程来加快传输速度?


4
解决大型GZIPPED文件未压缩大小的最快方法
压缩文件后,有一种方法可以快速查询该文件,以说出未压缩文件的大小(不解压缩),尤其是在未压缩文件的大小> 4GB的情况下。 根据RFC https://tools.ietf.org/html/rfc1952#page-5,您可以查询文件的最后4个字节,但是如果未压缩的文件大于4GB,则该值仅代表uncompressed value modulo 2^32 也可以通过运行检索此值gunzip -l foo.gz,但是“未压缩”列仅包含uncompressed value modulo 2^32一次,大概是因为它如上所述读取了页脚。 我只是想知道是否有一种无需先解压缩即可获取未压缩文件大小的方法,这在压缩文件包含50GB +数据并且使用诸如 gzcat foo.gz | wc -c 编辑: 4GB限制已在OSX()随附man的gzip实用程序页面中公开确认Apple gzip 242 BUGS According to RFC 1952, the recorded file size is stored in a 32-bit integer, therefore, it can not represent files larger than 4GB. This limitation …
24 compression  gzip 

5
即时流压缩不会溢出到硬件资源中吗?
我有200 GB的可用磁盘空间,16 GB的RAM(其中约1 GB被台式机和内核占用)和6 GB的交换空间。 我有一个240 GB的外部SSD,其中70 GB已使用1,其余的则免费,我需要备份到磁盘上。 通常,我会dd if=/dev/sdb of=Desktop/disk.img先将磁盘压缩,然后再压缩它,但首先制作映像不是一个选择,因为这样做会比我需要更多的磁盘空间,即使压缩步骤会导致压缩可用空间,因此最终存档可以轻松放入我的磁盘中。 dd默认情况下会写入STDOUT,并且gzip可以从STDIN读取,因此从理论上讲,我可以进行写入dd if=/dev/sdb | gzip -9 -,但是gzip读取字节所需的时间比dd产生字节的时间长得多。 来自man pipe: 写入管道写入端的数据由内核缓冲,直到从管道读取端读取数据为止。 我将一个|虚拟的管道想象成一个真实的管道-一个应用程序将数据放入管道,另一个应用程序将数据尽快从管道队列中取出。 当左侧的程序比管道的另一端希望更快地写入更多数据时,怎么办?它会导致过多的内存使用或交换使用,还是内核会尝试在磁盘上创建FIFO,从而填满磁盘?还是SIGPIPE Broken pipe如果缓冲区太大会失败? 基本上,这可以归结为两个问题: 将更多数据放入管道中比一次读取更多的含义和结果是什么? 将数据流压缩到磁盘而不将整个未压缩的数据流放在磁盘上的可靠方法是什么? 注意1:由于碎片等原因,我不能完全复制前70个已使用的GB并期望得到一个工作系统或文件系统,这需要完整的内容。
23 pipe  dd  compression  gzip 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.