tar 压缩解压命令

tar 解压缩命令 

华清远见2014-09-25   北京海淀区 张俊浩

Tar

-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。

下面的参数是根据需要在压缩或解压档案时可选的。

 

-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

-C  change to directory DIR

下面的参数-f是必须的

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

 

# tar -cf all.tar *.jpg 
这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。 

# tar -rf all.tar *.gif 
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。 

# tar -uf all.tar logo.gif 
这条命令是更新原来tarall.tarlogo.gif文件,-u是表示更新文件的意思。 

# tar -tf all.tar 
这条命令是列出all.tar包中所有文件,-t是列出文件的意思 

# tar -xf all.tar 
这条命令是解出all.tar包中所有文件,-x是解开的意思 


压缩
tar –cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg
tar –czf jpg.tar.gz *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
tar –cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux
zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux

 

解压
tar –xvf file.tar //解压 tar
tar -xzvf file.tar.gz //解压tar.gz

tar -xjvf file.tar.bz2   //解压 tar.bz2
tar –xZvf file.tar.Z   //解压tar.Z

unrar e file.rar //解压rar

unzip file.zip //解压zip


总结
1*.tar 用 tar –xvf 解压

2*.gz 用 gzip -d或者gunzip 解压

3*.tar.gz*.tgz 用 tar –xzf 解压

4*.bz2 用 bzip2 -d或者用bunzip2 解压

5*.tar.bz2tar –xjf 解压

6*.Z 用 uncompress 解压

7*.tar.Z tar –xZf 解压

8*.rar 用 unrar e解压

9*.zip 用 unzip 解压

补充:

1、压缩到指定目录tar cvzf  <directoryPath>/<filename>.tar.zip  <filename>  


2、解压到指定目录tar xzvf  <filename>.tar.zip -C <directoryPath>


<think>好的,我现在需要帮助用户了解tar命令压缩解压用法,并提供示例说明。用户之前的问题是关于卸载ffmpeg相关库,现在突然转到tar命令,可能是在进行系统管理时需要处理文件压缩。首先,我需要确保正确理解用户的需求,他们可能想要基本的tar使用教程,包括常见的压缩解压示例。根据用户提供的引用内容,特别是引用[2]中详细列出了tar的选项,我需要将这些选项整合到回答中,并给出实际例子。用户提到的引用[1]和[3]解释了tar和gzip的关系,因此需要强调tar打包和压缩工具(如gzip)的结合使用。接下来,我需要组织内容结构,分压缩解压两部分,每部分列出常用选项和示例。要注意用户可能对参数组合不太熟悉,比如-z代表gzip,-j代表bzip2,这些需要明确说明。同时,用户可能需要知道如何查看归档内容,以及如何保留文件权限,这些在引用[2]中都有提到,应该包含进去。还要注意用户可能遇到的常见问题,比如解压指定目录、处理不同压缩格式等。需要提供相应的命令示例,比如使用-C参数指定目录,或者使用不同的压缩选项。此外,用户可能对如何自动选择压缩方式感兴趣,引用[2]中的-a参数可以在这里应用。 最后,生成相关问题时要考虑用户可能进一步的需求,比如如何压缩多个目录、排除文件、增量备份等。这些问题可以帮助用户深入理解tar的高级用法。同时,确保回答中正确引用来源,比如在解释打包和压缩区别时引用[1],在列出选项时引用[2]。 需要检查所有命令是否正确,参数使用是否恰当,比如在解压时使用-xvf,压缩时使用-cvf,并正确结合压缩选项。还要注意路径问题,提醒用户使用绝对或相对路径时的注意事项,如-P参数的使用,但根据引用[2],-P可能涉及绝对路径,需谨慎使用。 另外,用户可能对tar与其他压缩工具的结合使用有疑问,比如如何创建.tar.gz或.tar.xz文件,这些都需要在示例中展示。同时,帮助用户区分打包和压缩的概念,确保他们理解tar本身只是打包,压缩是通过其他工具实现的,但tar可以调用这些工具进行一步处理。最后,验证所有示例命令是否可行,避免出现错误,比如文件路径是否存在,选项顺序是否正确(如-f必须后面跟文件名)。确保回答清晰易懂,结构合理,示例丰富,能够满足用户的实际需求。</think>### Linux下tar命令压缩解压详解 #### 一、基础概念 1. **打包与压缩区别** - `tar`本身是打包工具,将多个文件合并为单个归档文件(后缀`.tar`) - `gzip`/`bzip2`/`xz`是压缩工具,需与`tar`配合使用(后缀`.tar.gz`/`.tar.bz2`/`.tar.xz`)[^1] #### 二、常用参数速查 | 参数 | 功能描述 | 示例场景 | |------|----------|----------| | `-c` | 创建新归档文件 | `tar -cvf archive.tar dir/` | | `-x` | 解压归档文件 | `tar -xvf archive.tar` | | `-z` | 使用gzip压缩 | `tar -czvf archive.tar.gz dir/` | | `-j` | 使用bzip2压缩 | `tar -cjvf archive.tar.bz2 dir/` | | `-J` | 使用xz压缩 | `tar -cJvf archive.tar.xz dir/` | | `-v` | 显示操作过程 | 所有命令均可添加 | | `-f` | 指定文件名 | **必须放在参数末尾** | | `-a` | 自动选择压缩格式 | `tar -cavf archive.tar.gz dir/`[^2] | #### 三、典型应用场景 ##### 1. 压缩操作 ```bash # 创建普通tar包 $ tar -cvf project.tar ./project_dir/ # 创建gzip压缩包(推荐) $ tar -czvf backup.tar.gz /var/log/ # 创建bzip2压缩包(压缩率更高) $ tar -cjvf documents.tar.bz2 ~/Documents/ # 自动选择压缩格式(根据后缀名) $ tar -cavf data.tar.xz dataset/ ``` ##### 2. 解压操作 ```bash # 解压普通tar包 $ tar -xvf archive.tar # 解压gzip压缩包 $ tar -xzvf backup.tar.gz # 解压指定目录 $ tar -xzvf data.tar.gz -C /opt/ # 仅查看压缩包内容 $ tar -tf archive.tar ``` ##### 3. 高级技巧 ```bash # 保留文件权限(重要系统文件) $ tar -czvpf etc_backup.tar.gz /etc/ # 增量备份(仅添加新文件) $ tar -czvf incremental.tar.gz --newer-mtime="2023-01-01" ./src/ # 排除特定文件 $ tar -czvf web.tar.gz --exclude='*.tmp' --exclude='cache' ./website/ ``` #### 四、参数组合原理 - **压缩命令公式** $$ tar -c[压缩方式][其他参数]f 文件名 源路径 $$ - **解压命令公式** $$ tar -x[解压方式][其他参数]f 文件名 -C 目标路径 $$ #### 五、常见错误排查 1. `tar: Error is not recoverable: exiting now` → 检查文件权限和磁盘空间 2. `This does not look like a tar archive` → 确认文件完整性:$ file archive.tar.gz 3. 文件名乱码问题 → 添加`--force-local`参数 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值