批量解压
来源:互联网 发布:java连接数据库的框架 编辑:程序博客网 时间:2024/06/05 09:57
第一:
for tar in *.tar.gz; do tar xvf $tar; done
for tar in *.tar.bz2; do tar xvf $tar; done
第二:用tar命令批量解压某个文件夹下所有的tar.gz文件
ls *.tar.gz |xargs -n1 tar xzvf
第三:find -maxdepth 1 -name "*.bz2"|xargs -i tar xvjf {}i in $(ls *.tar);do tar xvf $i;done
问题:
我想进行批量解压tar文件,使用tar-xvf *.tar会出错,提示“Not found in archive”。解决方法有很多,比如写一个脚本之类的。请问为什么tar不支持这种通配符语法呢?是否有特殊的原因?我试过gzip就支gzip -d *.tar.gz。
回答:
通配符是shell解决的问题
如
tar-xvf *.tar
实际上执行tar时,tar接收到的是
tar-xvf a.tar b.tar c.tar ...
如果当前目录跟本没有tar的东西,那么tar就收到'*.tar'这个参数
与win不同,linux所有字符都可以作文件名,也即目录中不存在着*.tar这个文件
为了防止*.tar被shell解释为a.tar b.tar c.tar...
可以给它加个单引号
用tar解开一个Archive时,语法是
tar-xvf <tarfile.tar> <archived_file>
<tarfile.tar>是选项f所要求的,只能是一个文件,比如myfiles.tar。
<archived_file>是myfiles.tar所包含的归了档的文件中的一个或者多个成员文件。如果是多个,可以用通配符。
先别跟我急,我知道,这些你是清楚的。但是,你的问题是,用了
tar-xvf *.tar
如楼上所说,tar接收到的是
tar-xvf a.tar b.tar c.tar ...
tar把你的意图理解为,在a.tar里解出b.tarc.tar ...
第二:用tar命令批量解压某个文件夹下所有的tar.gz文件
ls *.tar.gz |xargs -n1 tar xzvf
第三:find -maxdepth 1 -name "*.bz2"|xargs -i tar xvjf {}
这条命令可解压当前目录下的所有bz2文件
批量解压是比较郁闷的事,以前尝试各种方法,甚至用脚本循环语句解压都不行
现在发现这条命令可以搞定,maxdepth表示搜索深度,1代表只搜索当前目录
第四:for问题:
我想进行批量解压tar文件,使用tar
回答:
通配符是shell解决的问题
如
tar
实际上执行tar时,tar接收到的是
tar
如果当前目录跟本没有tar的东西,那么tar就收到'*.tar'这个参数
与win不同,linux所有字符都可以作文件名,也即目录中不存在着
为了防止
可以给它加个单引号
用tar解开一个Archive时,语法是
tar
<tarfile.tar>
<archived_file>
先别跟我急,我知道,这些你是清楚的。但是,你的问题是,用了
tar
如楼上所说,tar接收到的是
tar
tar把你的意图理解为,在a.tar里解出b.tar
阅读全文
0 0
- 批量解压
- FreeBSD批量解压
- winrar批量解压文件
- 批量解压文件
- bat批量解压文件
- 批量解压shell脚本
- 批量解压文件
- [脚本]批量解压 重命名
- 批量压缩解压
- linux批量解压和批量压缩
- java批量压缩/解压文件夹
- Linux 下批量解压文件
- tar命令批量解压方法
- Linux 批量解压tar包
- ubunt批量解压rar文件
- [AHK]批量解压Zip文件
- ubuntu批量解压分卷文件
- 批量解压相同密码的RAR文件
- memcached,mongodb和redis三者区别,以及memcached项目实践
- html-鼠标移动后自动旋转
- Fedora 25
- 激光雷达学习笔记(三)特征提取
- Heap size check 堆大小检查
- 批量解压
- 使用卷积神经网络进行图片分类 3
- Opencv(Python) 教程-轮廓(2)轮廓特征求取
- POI操作Excel常用方法总结
- Python3极速入门
- 软件工程复习笔记
- Gerrit代码Review高阶实战
- Java中两表关系一对多,通过一表获取多表中数据并全部显示
- 几个RPC框架