标签: tar

Shell命令到tar目录,不包括某些文件/文件夹

是否有一个简单的shell命令/脚本支持排除某些文件/文件夹被存档?

我有一个目录需要使用子目录进行存档,该子目录包含许多我不需要备份的非常大的文件.

不完全解决方案:

tar --exclude=PATTERN命令与给定模式匹配并排除这些文件,但我需要忽略特定文件和文件夹(完整文件路径),否则可能会排除有效文件.

我还可以使用find命令创建文件列表并排除我不想存档的文件并将列表传递给tar,但这仅适用于少量文件.我有成千上万.

我开始认为唯一的解决方案是创建一个文件,其中包含要排除的文件/文件夹列表,然后使用rsync --exclude-from=file将所有文件复制到tmp目录,然后使用tar来存档该目录.

谁能想到更好/更有效的解决方案?

编辑:cma的解决方案效果很好.最重要的是--exclude='./folder' 必须在tar命令的开头.完整命令(cd首先,所以备份是相对于该目录):

cd /folder_to_backup
tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .
Run Code Online (Sandbox Code Playgroud)

linux shell tar archive

760
推荐指数
16
解决办法
82万
查看次数

如何在不包含目录本身的情况下tar文件和文件夹目录?

我通常这样做:

tar -czvf my_directory.tar.gz my_directory
Run Code Online (Sandbox Code Playgroud)

如果我只想在my_directory中包含所有内容(包括任何隐藏的系统文件),而不是目录本身,该怎么办?我不想要:

my_directory
   --- my_file
   --- my_file
   --- my_file
Run Code Online (Sandbox Code Playgroud)

我想要:

my_file
my_file
my_file
Run Code Online (Sandbox Code Playgroud)

gzip tar archive

362
推荐指数
8
解决办法
48万
查看次数

如何在另一个目录中解压缩tar.gz

我有一个档案

与*.tar.gz

如何在目标目录中解压缩?

unix gzip tar

258
推荐指数
2
解决办法
26万
查看次数

Tar目录,但不在存档中存储完整的绝对路径

我在备份shell脚本的部分中有以下命令:

tar -cjf site1.bz2 /var/www/site1/
Run Code Online (Sandbox Code Playgroud)

当我列出档案的内容时,我得到:

tar -tf site1.bz2
var/www/site1/style.css
var/www/site1/index.html
var/www/site1/page2.html
var/www/site1/page3.html
var/www/site1/images/img1.png
var/www/site1/images/img2.png
var/www/site1/subdir/index.html
Run Code Online (Sandbox Code Playgroud)

但我想/var/www/site1从归档中的目录和文件名中删除该部分,以简化提取并避免无用的常量目录结构.永远都不知道,如果我在一个没有存储网络数据的地方提取备份网站/var/www.

对于上面的例子,我想:

tar -tf site1.bz2
style.css
index.html
page2.html
page3.html
images/img1.png
images/img2.png
subdir/index.html
Run Code Online (Sandbox Code Playgroud)

因此,当我提取时,文件在当前目录中被提取,之后我不需要移动提取的文件,因此保留了子目录结构.

关于tar和备份在stackoverflow网上和网上其他地方已经有很多问题,但是大多数都要求放弃整个子目录结构(展平),或者只是添加或删除名称中的首字母/(我不是知道它在提取时的确切变化),但不多了.

在阅读了这里和那里发现的一些解决方案以及手册之后,我尝试了:

tar -cjf site1.bz2 -C . /var/www/site1/
tar -cjf site1.bz2 -C / /var/www/site1/
tar -cjf site1.bz2 -C /var/www/site1/ /var/www/site1/
tar -cjf site1.bz2 --strip-components=3 /var/www/site1/
Run Code Online (Sandbox Code Playgroud)

但它们都没有按我想要的方式工作.有些人什么都不做,有些人不再存档子目录.

它位于由Cron启动的备份shell脚本中,所以我不太清楚,哪个用户运行它,路径和当前目录是什么,因此总是需要编写绝对路径,并且不希望更改当前目录避免在脚本中进一步破坏(因为它不仅备份网站,还备份数据库,然后将所有内容发送到FTP等)

怎么做到这一点?

我只是误解了选项-C的工作原理吗?

linux bash backup tar

233
推荐指数
6
解决办法
17万
查看次数

利用多核进行tar + gzip/bzip压缩/解压缩

我通常压缩使用tar zcvf和解压缩使用tar zxvf(由于习惯使用gzip).

我最近得到了一个具有超线程的四核CPU,所以我有8个逻辑核心,我注意到许多核心在压缩/解压缩期间未被使用.

有什么办法可以利用未使用的核心来加快速度吗?

gzip 7zip tar xz bzip2

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

从文件列表中获取输入的Tar归档

我有一个文件,其中包含我想用tar存档的文件列表.我们称之为mylist.txt

它包含:

file1.txt
file2.txt
...
file10.txt
Run Code Online (Sandbox Code Playgroud)

有没有办法可以发出mylist.txt作为输入的TAR命令?就像是

tar -cvf allfiles.tar -[someoption?] mylist.txt
Run Code Online (Sandbox Code Playgroud)

所以它就像我发出这个命令一样:

tar -cvf allfiles.tar file1.txt file2.txt file10.txt 
Run Code Online (Sandbox Code Playgroud)

unix linux tar archive

146
推荐指数
6
解决办法
13万
查看次数

在一个命令中创建tar.xz

我试图.tar.xz在一个命令中创建一个压缩存档.具体的语法是什么?

我试过了tar cf - file | xz file.tar.xz,但那不起作用.

compression tar archive xz

127
推荐指数
5
解决办法
11万
查看次数

tar和zip有什么区别?

tar和zip有什么区别?每个用例有哪些?

unix compression zip tar

118
推荐指数
1
解决办法
6万
查看次数

如何提取filename.tar.gz文件

我想提取一个名为的存档filename.tar.gz.

使用tar -xzvf filename.tar.gz不提取文件.它给出了这个错误:

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error exit delayed from previous errors
Run Code Online (Sandbox Code Playgroud)

linux gzip file tar

117
推荐指数
4
解决办法
25万
查看次数

创建.tar.gz文件时排除目录

我有一个/public_html/文件夹,在该文件夹中有一个/tmp/文件夹,其中包含70gb的文件,我并不需要.

现在,我想创建一个.tar.gz/public_html/排除/tmp/

这是我跑的命令:

tar -pczf MyBackup.tar.gz /home/user/public_html/ --exclude "/home/user/public_html/tmp/" 
Run Code Online (Sandbox Code Playgroud)

tar仍在创建,通过做一个ls -sh我可以看到MyBackup.tar.gz已经有大约30gb,我肯定知道/public_html/没有/tmp/超过1GB的文件.

我做错了什么?

linux compression gzip tar

111
推荐指数
7
解决办法
18万
查看次数

标签 统计

tar ×10

gzip ×5

linux ×5

archive ×4

compression ×3

unix ×3

xz ×2

7zip ×1

backup ×1

bash ×1

bzip2 ×1

file ×1

shell ×1

zip ×1