ubuntu批量解压文件指令汇总
2023-12-26 15:41:13
ubuntu批量解压文件指令汇总
1、批量解压压缩包文件
方法一:xargs传参
ls *.tar | xargs -n1 tar xvf # tar
ls *.tar.gz | xargs -n1 tar xzvf #tar.gz
ls *.tar.gz | xargs -n1 unzip -o #zip
方法二:for循环
for tar in *.tar; do tar xvf $tar; done # tar
for tar in *.tar.gz; do tar xzvf $tar; done #tar.gz
for tar in *.zip; do unzip $tar; done #zip
python代码实现批量解压文件
针对每个zip压缩包本身没有文件夹的情况,解压时会根据压缩包的名称来创建新的文件夹来存放解压后的文件
import os
import zipfile
# 压缩文件所在目录
zip_anno_path = '/media/qy/my_passport/**/SOTdataset/VOT2020/annotations'
zip_data_path = '/media/qy/my_passport/**/SOTdataset/VOT2020/data'
# 解压后的目录
# 解压anno
dir_anno_path = '/media/qy/my_passport/**/SOTdataset/VOT2020-1/anno'
dir_data_path = '/media/qy/my_passport/**/SOTdataset/VOT2020-1/data'
zip_path = zip_data_path
dir_path = dir_data_path
# 遍历目录中所有文件
for file_name in os.listdir(zip_path):
if file_name.endswith('.zip'):
# 拼接压缩文件的完整路径
file_path = os.path.join(zip_path, file_name)
res_dir_path = dir_path +"/" + file_name.split('.')[0]
if not os.path.exists(res_dir_path):
os.makedirs(res_dir_path)
# 打开压缩文件并解压
with zipfile.ZipFile(file_path, 'r') as zip_ref:
zip_ref.extractall(res_dir_path)
2、解压单个压缩包
tar xvf FileName.tar #tar
tar -jxvf gcc-4.8.2.tar.bz2 #tar.gz.bz2
tar zxvf FileName.tar.gz #tar.gz 或者 tar -xvf FileName.tar.gz
unzip FileName.zip #zip
3、删除指定后缀文件
rm *.zip #批量删除.zip的文件
rm -rf * #删除所有文件夹,但无法恢复
4、一个文件夹移动到另一个文件夹
4.1 将A目录下的文件夹移动到B目录下(包含A文件夹本身)
sudo mv /home/ubuntu/A/ /home/ubuntu/B/
4.2 将A目录下的文件夹移动到B目录下(不包含A文件夹本身)
sudo mv /home/ubuntu/A/* /home/ubuntu/B/
5、常用解压与压缩命令
.tar是打包
.tar.gz是压缩过的文件
.tar.gz常见于unix系统,在ubuntu或macos可以直接解压,
.zip常见于windows系统
5.1 tar 文件
# 仅打包,并非压缩
tar -xvf FileName.tar # 解包
tar -cvf FileName.tar DirName # 将DirName和其下所有文件(夹)打包
5.2 gz文件
# .gz
gunzip FileName.gz # 解压1
gzip -d FileName.gz # 解压2
gzip FileName # 压缩,只能压缩文件
5.3 .tar.gz文件、 .tgz文件
# .tar.gz 和 .tgz
tar -zxvf FileName.tar.gz # 解压
tar -zcvf FileName.tar.gz DirName # 将DirName和其下所有文件(夹)压缩
tar -C DesDirName -zxvf FileName.tar.gz # 解压到目标路径
5.4 .zip文件
# 感觉.zip占用空间比.tar.gz大
unzip FileName.zip # 解压
zip FileName.zip DirName # 将DirName本身压缩
zip -r FileName.zip DirName # 压缩,递归处理,将指定目录下的所有文件和子目录一并压缩
5.5 .rar文件
rar x FileName.rar # 解压
rar a FileName.rar DirName # 压缩
文章来源:https://blog.csdn.net/guoqingru0311/article/details/135221432
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!