标签: gzip

我可以使用 gzip 压缩整个文件夹吗?

我正在尝试在 unix 中压缩一个文件夹。可以使用 gzip 命令完成吗?

zip gzip

489
推荐指数
4
解决办法
122万
查看次数

如何告诉gzip保留原始文件?

我想使用 gzip 命令行工具压缩文本文件,同时保留原始文件。默认运行以下命令

gzip file.txt
Run Code Online (Sandbox Code Playgroud)

导致修改此文件并重命名它file.txt.gz。而不是这种行为,除了现有的file.txt. 现在我使用以下命令来做到这一点

gzip -c file.txt > file.txt.gz
Run Code Online (Sandbox Code Playgroud)

它有效,但我想知道为什么没有更简单的解决方案来完成如此常见的任务?也许我错过了这样做的选择?

command-line gzip files

243
推荐指数
3
解决办法
28万
查看次数

为什么 tar 存档格式切换到 xz 压缩以替换 bzip2 而 gzip 呢?

越来越多的tar存档使用xz基于 LZMA2的格式进行压缩,而不是传统的bzip2(bz2)压缩。事实上,kernel.org2013 年 12 月 27日晚发布了“再见 bzip2公告,表明内核源代码将从此时起以 tar.gz 和 tar.xz 格式发布 - 并在网站主页上发布直接提供的是在tar.xz.

是否有任何具体原因可以解释为什么会发生这种情况以及gzip在这种情况下的相关性是什么?

gzip history bzip2 xz

225
推荐指数
4
解决办法
8万
查看次数

解压缩 .gz 文件而不删除 gzipped 文件

我有一个文件file.gz,当我尝试使用 解压缩该文件时gunzip file.gz,它解压缩了该文件,但仅包含已提取并删除的file.gz文件。

如何通过保留解压缩文件和压缩文件来解压缩?

command-line gzip files gunzip

218
推荐指数
2
解决办法
84万
查看次数

tar:从成员名称中删除前导“/”

root@server # tar fcz bkup.tar.gz /home/foo/
tar: Removing leading `/' from member names
Run Code Online (Sandbox Code Playgroud)

如何解决此问题并保留/文件名?

tar gzip

179
推荐指数
5
解决办法
32万
查看次数

如何从大型 tar.gz 存档中提取单个文件夹?

我在5GB存档上使用此命令

tar -zxvf archive.tar.gz /folder/in/archive
Run Code Online (Sandbox Code Playgroud)

这是正确的方法吗?似乎永远没有命令行输出......

shell tar gzip

171
推荐指数
1
解决办法
27万
查看次数

如何在 UNIX 中解压缩 zlib 数据?

我在 Python 中创建了 zlib 压缩数据,如下所示:

import zlib
s = '...'
z = zlib.compress(s)
with open('/tmp/data', 'w') as f:
    f.write(z)
Run Code Online (Sandbox Code Playgroud)

(或单行中壳: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

$ cat /tmp/data | uncompress -
gzip: stdin: not in gzip format
Run Code Online (Sandbox Code Playgroud)

似乎我创建了类似 gzip 的文件,但没有任何标题。不幸的是,我在 gzip 手册页中没有看到任何解压缩此类原始数据的选项,并且 zlib 包不包含任何可执行实用程序。 …

compression gzip

155
推荐指数
8
解决办法
26万
查看次数

如何将文件添加/更新到现有的 tar.gz 存档?

有没有办法在 tar.gz 存档中添加/更新文件?基本上,我有一个存档,其中包含一个文件,/data/data/com.myapp.backup/./files/settings.txt我想从存档中提取该文件(已完成),并在编辑完成后将其推回存档中。我怎样才能做到这一点?是否因为.在路径中而有问题?

tar archive gzip

94
推荐指数
4
解决办法
24万
查看次数

有没有透明结合zcat和cat的工具?

在处理日志文件时,由于某些原因,有些最终会成为 gzipped 文件,logrotate而有些则不会。所以当你尝试这样的事情时:

$ zcat *
Run Code Online (Sandbox Code Playgroud)

你最终得到一个命令行zcat xyz.log xyz.log.1 xyz.log.2.gz xyz.log.3.gz,然后是:

gzip: xyz.log: not in gzip format
Run Code Online (Sandbox Code Playgroud)

是否有一种工具可以使用魔术字节,类似于file工作原理,并使用zcatcat取决于结果,以便我可以将输出传输到grep例如?

注意:我知道我可以编写脚本,但我想知道是否已经有工具了。

gzip text-processing cat

85
推荐指数
4
解决办法
2万
查看次数

tar 提取取决于文件名?

我经常使用 wget 从 sourceforge.net 下载 tarball。

下载的文件然后被命名,例如 SQliteManager-1.2.4.tar.gz?r=http:%2F%2Fsourceforge.net%2Fprojects%2Fsqlitemanager%2Ffiles%2F&ts=1305711521&use_mirror=switch

当我尝试

tar xzf SQliteManager-1.2.4.tar.gz\?r\=http\:%2F%2Fsourceforge.net%2Fprojects%2Fsqlitemanager%2Ffiles%2F\&ts\=1305711521\&use_mirror\=switch
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

tar (child): Cannot connect to SQliteManager-1.2.4.tar.gz?r=http: resolve failed

gzip: stdin: unexpected end of file
tar: Child returned status 128
tar: Error is not recoverable: exiting now
Run Code Online (Sandbox Code Playgroud)

将文件重命名为foo.tar.gz提取工作完美后。

有没有办法让我不必在每次提取目标文件之前都被迫重命名?

shell tar gzip

39
推荐指数
2
解决办法
3万
查看次数

标签 统计

gzip ×10

tar ×4

command-line ×2

files ×2

shell ×2

archive ×1

bzip2 ×1

cat ×1

compression ×1

gunzip ×1

history ×1

text-processing ×1

xz ×1

zip ×1