首页 > 其他分享 >tar命令中--exclude参数详解

tar命令中--exclude参数详解

时间:2024-04-30 19:00:12浏览次数:22  
标签:file3 tar -- t2 t3 t1 test exclude txt

tar命令中--exclude参数详解

测试环境:
[root@osker /]# uname -r
3.10.0-957.el7.x86_64
[root@osker /]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
[root@osker /]# tree test
test
├── t1
│   ├── file1.txt
│   ├── file2.txt
│   └── file3.txt
├── t2
│   ├── file1.txt
│   ├── file2.txt
│   └── file3.txt
└── t3
    ├── file1.txt
    ├── file2.txt
    └── file3.txt
3 directories, 9 files

打包/test目录下的文件,排除所有文件名为file1.txt的文件
1、--exclude后跟”=“,排除正常。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude=file1.txt     
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file2.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file2.txt
/test/t3/file3.txt
2、--exclude后跟空格,排除正常。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude file1.txt
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file2.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file2.txt
/test/t3/file3.txt

打包/test目录下的文件,排除/test/t1/file1.txt的文件
1、--exclude后跟”=“,排除正常。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude=/test/t1/file1.txt
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file1.txt
/test/t2/file2.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt
2、--exclude后跟空格,排除正常。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude /test/t1/file1.txt
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file1.txt
/test/t2/file2.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt
3、打包目录为绝对路径,排除文件为相对路径时候,排除文件成功。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude test/t1/file1.txt
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file1.txt
/test/t2/file2.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt
4、打包目录为相对路径,排除文件为绝对路径时候,排除文件失败。
[root@osker /]# tar -czvf ces.tar.gz test --exclude /test/t1/file1.txt
test/
test/t1/
test/t1/file1.txt
test/t1/file2.txt
test/t1/file3.txt
test/t2/
test/t2/file1.txt
test/t2/file2.txt
test/t2/file3.txt
test/t3/
test/t3/file1.txt
test/t3/file2.txt
test/t3/file3.txt
5、打包目录和排除文件为相对路径的时候,排除文件正常。
[root@osker /]# tar -czvf ces.tar.gz test --exclude test/t1/file1.txt
test/
test/t1/
test/t1/file2.txt
test/t1/file3.txt
test/t2/
test/t2/file1.txt
test/t2/file2.txt
test/t2/file3.txt
test/t3/
test/t3/file1.txt
test/t3/file2.txt
test/t3/file3.txt

使用--exclude-from排除文件方法,将要排除的文件路径写入到一个文件中。适合有多个文件需要排除的情况
[root@osker /]# echo "/test/t2/file2.txt" > /exclude.txt
1、打包目录和排除文件以及排除文件里的路径为绝对路径的时候,排除文件正常。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude-from /exclude.txt
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file1.txt
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file1.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt
2、打包目录为绝对路径,排除文件为相对路径,排除文件内容为绝对路径的时候,排除文件正常。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude-from exclude.txt
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file1.txt
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file1.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt
3、打包目录为相对路径,排除文件和排除文件内容为绝对路径的时候,排除文件失败。
[root@osker /]# tar -czvf ces.tar.gz test --exclude-from /exclude.txt
test/
test/t1/
test/t1/file1.txt
test/t1/file2.txt
test/t1/file3.txt
test/t2/
test/t2/file1.txt
test/t2/file2.txt
test/t2/file3.txt
test/t3/
test/t3/file1.txt
test/t3/file2.txt
test/t3/file3.txt
4、打包目录和排除文件为相对路径,排除文件内容为绝对路径的时候,排除文件失败。
[root@osker /]# tar -czvf ces.tar.gz test --exclude-from exclude.txt
test/
test/t1/
test/t1/file1.txt
test/t1/file2.txt
test/t1/file3.txt
test/t2/
test/t2/file1.txt
test/t2/file2.txt
test/t2/file3.txt
test/t3/
test/t3/file1.txt
test/t3/file2.txt
test/t3/file3.txt
5、排除文件内容为相对路径的时候,打包目录和排除文件为相对路径或者绝对路径,排除文件成功。
[root@osker /]# echo "test/t2/file2.txt" > exclude.txt
[root@osker /]# tar -czvf ces.tar.gz test --exclude-from exclude.txt
test/
test/t1/
test/t1/file1.txt
test/t1/file2.txt
test/t1/file3.txt
test/t2/
test/t2/file1.txt
test/t2/file3.txt
test/t3/
test/t3/file1.txt
test/t3/file2.txt
test/t3/file3.txt
[root@osker /]# tar -czvf ces.tar.gz test --exclude-from /exclude.txt
test/
test/t1/
test/t1/file1.txt
test/t1/file2.txt
test/t1/file3.txt
test/t2/
test/t2/file1.txt
test/t2/file3.txt
test/t3/
test/t3/file1.txt
test/t3/file2.txt
test/t3/file3.txt
[root@osker /]# tar -czvf ces.tar.gz /test --exclude-from /exclude.txt
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file1.txt
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file1.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt
[root@osker /]# tar -czvf ces.tar.gz /test --exclude-from exclude.txt
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file1.txt
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file1.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt

排除目录
排除目录后不接“/”,排除目录成功。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude=/test/t1
tar: Removing leading `/' from member names
/test/
/test/t2/
/test/t2/file1.txt
/test/t2/file2.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt
排除目录后接“/”,排除目录失败。
[root@osker /]# tar -czvf ces.tar.gz /test --exclude=/test/t1/
tar: Removing leading `/' from member names
/test/
/test/t1/
/test/t1/file1.txt
/test/t1/file2.txt
/test/t1/file3.txt
/test/t2/
/test/t2/file1.txt
/test/t2/file2.txt
/test/t2/file3.txt
/test/t3/
/test/t3/file1.txt
/test/t3/file2.txt
/test/t3/file3.txt

总结:
1、tar命令下的--exclude后面可以跟”=“或者空格,效果一样。
2、tar命令下的--exclude后面跟文件名,会排除所有和此名相同的文件。
3、tar命令下的--exclude后面跟排除文件的路径为绝对路径的时候,打包路径也必须为绝对路径。
4、tar命令下的--exclude后面跟排除文件的路径为相对路径的时候,打包路径为相对或者绝对路径都可以。
5、tar命令下的--exclude-from后面排除文件里的路径为绝对路径的时候,打包路径也必须为绝对路径。
6、tar命令下的--exclude-from后面排除文件里的路径为相对路径的时候,打包路径为相对或者绝对路径都可以。
7、排除目录时候,排除的目录后面不能接“/”。

标签:file3,tar,--,t2,t3,t1,test,exclude,txt
From: https://www.cnblogs.com/fpcbk/p/18168575

相关文章

  • 深入理解正则表达式:从入门到精通
    title:深入理解正则表达式:从入门到精通date:2024/4/3018:37:21updated:2024/4/3018:37:21tags:正则Python文本分析日志挖掘数据清洗模式匹配工具推荐第一章:正则表达式入门介绍正则表达式的基本概念和语法正则表达式是一种用于描述字符串模式的表达式,由普通......
  • 怎么给程序员定 KPI ?原则和最佳KPI
    研究表明,相较于传统办公室环境,远程工作团队的效率更高。这引出了一个问题:远程软件工程师的效率提升到了什么程度?想要了解远程工作如何影响团队表现的管理人员可能会设定一些关键绩效指标。但是,并不是所有的KPI都适用:像代码行数、工作时间和修复的错误这类数据可能会误导对生产......
  • 【题解】 量化交易3
    题目描述applepi训练了一个可以自动在股票市场进行量化交易的模型。通常来说,applepi写出的模型,你懂得,就好比一架印钞机。不过为了谨慎起见,applepi还是想先检查一下模型的效果。applpie收集了“塞帕思股份(surpass)”在最近的连续N天内的价格。在每一天中,他可以做如下事情之一:......
  • 在 .net core 3.1 的 docker 镜像生成的容器中,连接 sql server 2008 r2 版本的数据库,
    错误1:{"ClassName":"System.Data.SqlClient.SqlException","Message":"Aconnectionwassuccessfullyestablishedwiththeserver,butthenanerroroccurredduringthepre-loginhandshake.(provider:TCPProvider,......
  • 阿里云CTF逆向题“欧拉”详细Writeup
    题目来源:阿里云CTF题目类型:逆向题目描述:欧拉欧拉欧拉欧拉![attachment](Euler.exe)题目解析:使用IDA打开,F5,整体先看一遍,100多行,没有混淆先看变量定义这里:charStr1[16];//[rsp+20h][rbp-40h]BYREF__int128v21;//[rsp+30h][rbp-30h]__int128v22;//[rsp+40h][r......
  • Prometheus监控mongo
    安装mongo插件[email protected]:dcu/mongodb_exporter.git$GOPATH/src/github.com/dcu/mongodb_exporter也可以去github上,下载源码,在编译安装cd$GOPATH/src/github.com/dcu/mongodb_exportermakebuild./mongodb_exporter-h注意......
  • 基本积分表
    \(\intx^{\mu}dx=\frac{1}{\mu+1}x^{\mu+1}+C\)\[\begin{eqnarray}\intx^{\mu}dx=\frac{1}{\mu+1}x^{\mu+1}+C\\\mu为常数,但\mu\ne0\\\\推导过程如下:\\(\frac{1}{\mu+1}x^{\mu+1})'=\frac{(x^{\mu+1})'\cdot\mu+1-......
  • WPF DataTemplate DataType
    //xaml<Windowx:Class="WpfApp77.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.mic......
  • 《Effective C++》第三版-3. 资源管理(Resource Management)
    目录条款13:以对象管理资源(Useobjectstomanageresources)关键想法智能指针条款14:在资源管理类中小心copying行为(Thinkcarefullyaboutcopyingbehaviorinresource-managingclasses)条款15:在资源管理类中替工对原始资源的访问(Provideaccesstorawresourcesinresource-ma......
  • rust+stm32+vscode搭建开发调试环境
    1.安装rustrust官网传送门2.安装openocd安装openocd传送门3.安装stlink安装stlink传送门4.搭建gcc-arm-none-eabi编译环境搭建gcc-arm-none-eabi编译环境5.安装vscodevscode官网传送门6.安装相关插件rust-analyzer:使用VSCode开发Rust必备cortex-debug:调试、debug嵌入......