标签: tar

用tar压缩文件夹?

我试图压缩文件夹(/var/www/)来~/www_backups/$time.tar这里$time是当前日期。

这就是我所拥有的:

cd /var/www && sudo tar -czf ~/www_backups $time"
Run Code Online (Sandbox Code Playgroud)

我完全迷失了,我已经在这里呆了几个小时了。不确定是否-czf正确。我只是想将所有内容复制/var/www到一个$time.tar文件中,并且我想维护所有文件的文件权限。谁能帮我吗?

linux tar backup

349
推荐指数
2
解决办法
72万
查看次数

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万
查看次数

如何从 tar.gz 中提取特定文件

我们如何从大型 tar.gz 文件中提取特定文件?我在这个问题中找到了从 tar 中提取文件的过程,但是,当我在那里尝试提到的命令时,出现错误:

$ tar --extract --file={test.tar.gz} {extract11}
tar: {test.tar.gz}: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
Run Code Online (Sandbox Code Playgroud)

然后我如何从中提取文件tar.gz

tar

166
推荐指数
4
解决办法
31万
查看次数

如何在解压过程中选择目录名称

假设我有名为 的文件ugly_name.tar,提取后将成为ugly_name目录。我可以使用什么命令来pretty_name代替生成的目录名称?

tar rename

164
推荐指数
4
解决办法
13万
查看次数

如何使用最大压缩对带有 TAR 的目录进行 XZ?

所以我需要用最大压缩率压缩一个目录。

我该怎么做xz?我的意思是我也需要,tar因为我不能只用xz. 是否有一个oneliner可以生产例如foo.tar.xz

tar directory compression

138
推荐指数
8
解决办法
14万
查看次数

为什么我要压缩单个文件?

在我的公司,我们将本地开发数据库快照下载为db.dump.tar.gz文件。压缩是有道理的,但 tarball 只包含一个文件 ( db.dump)。

归档单个文件是否有任何意义,或者.tar.gz只是这样一种常见的习惯用法?为什么不只是.gz

tar archive compression

103
推荐指数
6
解决办法
2万
查看次数

创建一个 tar 存档,分成最大大小的块

我需要备份一个相当大的目录,但我受到单个文件大小的限制。我想基本上创建一个tar.(gz|bz2)档案,该档案被分成 200MB 的最大档案。Clonezilla 通过拆分像这样命名的映像备份来做类似的事情:

sda1.backup.tar.gz.aa
sda1.backup.tar.gz.ab
sda1.backup.tar.gz.ac
Run Code Online (Sandbox Code Playgroud)

有没有办法在一个命令中做到这一点?我了解如何使用该split命令,但我不想创建一个巨大的存档,然后将其拆分为较小的存档,因为这将使我最初创建存档所需的磁盘空间增加一倍。

tar backup

102
推荐指数
4
解决办法
14万
查看次数

tar --exclude 不排除。为什么?

我在成功执行的 bash 脚本中有这个非常简单的行(即生成_data.tar文件),除了它排除它通过--exclude选项被告知排除的子目录:

/bin/tar -cf /home/_data.tar  --exclude='/data/sub1/*'  --exclude='/data/sub2/*' --exclude='/data/sub3/*'  --exclude='/data/sub4/*'  --exclude='/data/sub5/*'  /data
Run Code Online (Sandbox Code Playgroud)

相反,它生成一个_data.tar包含 /data 下所有内容的文件,包括我想排除的子目录中的文件。

知道为什么吗?以及如何解决这个问题?

更新我根据下面第一个答案中提供的链接实现了我的观察(首先是顶级目录,最后排除后没有空格):

/bin/tar -cf /home/_data.tar  /data  --exclude='/data/sub1/*'  --exclude='/data/sub2/*'  --exclude='/data/sub3/*'  --exclude='/data/sub4/*'  --exclude='/data/sub5/*'
Run Code Online (Sandbox Code Playgroud)

但这没有帮助。所有“排除的”子目录都存在于结果_data.tar文件中。

这令人费解。无论这是当前 tar(GNU tar 1.23,在 CentOS 6.2,Linux 2.6.32 上)中的错误,还是 tar 对空格和其他容易错过的错别字“极度敏感”,我都认为这是一个错误。目前。

这太可怕了:我尝试了下面建议的见解(没有尾随/*),但它在生产脚本中仍然不起作用:

/bin/tar -cf /home/_data.tar  /data  --exclude='/data/sub1'  --exclude='/data/sub2'  --exclude='/data/sub3'  --exclude='/data/sub4'
Run Code Online (Sandbox Code Playgroud)

除了引号和 2 个空格而不是 1 个空格之外,我看不出我尝试过的和@Richard Perrin 尝试过的有任何区别。我要试试这个(必须等待每晚脚本作为要支持的目录运行) up 是巨大的)并报告。

/bin/tar -cf /home/_data.tar  /data --exclude=/data/sub1 --exclude=/data/sub2 --exclude=/data/sub3 --exclude=/data/sub4
Run Code Online (Sandbox Code Playgroud)

我开始认为所有这些tar --exclude …

tar

100
推荐指数
6
解决办法
25万
查看次数

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

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

tar archive gzip

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

标签 统计

tar ×10

gzip ×3

archive ×2

backup ×2

compression ×2

directory ×1

linux ×1

rename ×1

shell ×1