ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

tar压缩目录下所有文件到单独的压缩包并删除源文件

2021-08-31 13:31:55  阅读:257  来源: 互联网

标签:tar -- gz remove 源文件 num txt 压缩包


想把服务器上的一大批文件下回本地,本以为tar压缩下就可以,结果发现……

这万恶的10g空间……直接压缩是不可能的了。

其次打算直接用ftp传,看到200k的速度也放弃了……

再不济用http-server?

足足有3000多文件,等下载完手都废了……

发现到tar有一个--remove-files的选项 简直是为小空间服务器量身定做的,但当我带上参数再压缩时……空间又满了。。百度了下才知道这个选项是指全部压缩完后删除。那能不能单独压缩文件并删除呢?贴一个脚本:

点击查看代码

find . -type f|xargs -I {} tar zcvf {}.tar.gz {}

运行完压缩包就放在了文件在的目录。灵感突发其来,贴一段自己写的

num=0
find . -type f  > filelist.txt
for i in `cat filelist.txt`
do
tar czvf $num.tar.gz --remove-files $i
num=$(($num+1))
done

用screen挂在后台运行。运行效果:

然后用ls | grep gz  > tarlist.txt获取列表,用迅雷下载回来,再贴一段批量解压的脚本:

for i in `cat tarlist.txt`
do
tar xzvf $i --remove-files
done

不知道该如何将压缩包的名字设置为原来的名字,求大佬赐教。。

 

标签:tar,--,gz,remove,源文件,num,txt,压缩包
来源: https://www.cnblogs.com/tianpanyu/p/15209912.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有