删除tar包解压文件

删除tar包解压出来的不在同一个目录


对于我这样解压tar包都不直接查一下tar包内容的人,又不指定解压路径,在遇到tar包里的内容不在一个文件夹下的情况,就会变得很悲剧..

在一个有很多文件/文件夹的目录下,直接tar zxf xxx.tar.gz ,解压完后发现,目录下多出来了一大堆文件.

这时候又没有undo操作,只能自己再把包里的内容删掉了.

纠结了一下,组合了几个命令,删除当前文件夹下与压缩包文件名相同的文件(夹),达到undo的效果.

tar vtf $1 | awk '{print $6}' | xargs rm -r   #$1即tar包名

达到目的,收工~

另,最好还是解压到指定目录,希望自己能养成这个习惯...希望....

tar zxf tarname.tar.gz -C targetDir


--写完居然木要有发出去............!!

### 如何在 Linux/Unix 中使用命令行解压 tar #### 解压 tar 的基础语法 `tar` 是一种用于打和压缩文件的工具。要解压一个 `tar` ,通常会根据其扩展名来决定具体的参数组合。以下是常见的几种情况及其对应的命令: 1. **对于 `.tar` 文件** 如果是一个普通的未压缩的 `tar` 文件,则可以使用以下命令进行解压: ```bash tar -xvf filename.tar ``` 这里的 `-v` 参数表示显示详细的处理过程,而 `-f` 表示指定操作的目标文件[^1]。 2. **对于 `.tar.gz` 或 `.tgz` 文件** 对于通过 gzip 压缩过的 `tar` 文件,需要加上 `-z` 参数来进行解压: ```bash tar -zxvf filename.tar.gz ``` 此处 `-z` 选项告诉 `tar` 使用 gzip 来解压数据流后再提取文件。 3. **对于 `.tar.bz2` 文件** 若是 bzip2 压缩格式,则需加入 `-j` 参数执行解压动作: ```bash tar -jxvf filename.tar.bz2 ``` 同样地,这里的 `-j` 意味着利用 bzip2 工具完成初步解压缩工作再继续展开档案结构。 4. **对于 `.tar.xz` 文件** 针对较新的 xz 格式的压缩,应采用 `-J` 参数实现解压功能: ```bash tar -Jxvf filename.tar.xz ``` 上述指令中的 `-J` 明确指定了应用 xz 实现解压缩的过程。 5. **特殊情况下的旧版 compress 压缩方式 (.tar.Z)** 当遇到由老版本 UNIX 的 compress 方法产生的 `.tar.Z` 类型时,应当先单独运行 uncompress 处理该层封装然后再调用常规 untar 流程;当然也可以一步到位直接写成如下形式: ```bash tar -Zxvf filename.tar.Z ``` 注意到此处使用的特殊标志 `-Z` 即代表兼容这种早期标准的行为模式[^3]。 #### 删除解压的内容 如果误操作导致不想要的结果或者希望清理掉之前手动解开的东西,那么可以通过管道连接的方式批量移除所有被释放出来的子目录与项目条目。例如下面这个例子展示了怎样安全有效地清除那些因错误点击而导致额外生成出来的一堆东西: ```bash tar -tf big-bag.tar.gz | xargs rm -rf ``` 这条语句首先列举出目标归档内部所含有的全部成员清单并通过标准输出传递给后续阶段作为待处置对象列表交给最终环节去逐项销毁它们实体存在状态[^2]。 ### 总结 以上介绍了不同类型的 tar 如何正确运用相应的命令参数加以打开恢复原始资料集合的方法论,并附带提及了一种应急状况下挽回局面的技术手段供参考学习之用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值