首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >迭代压缩文件

迭代压缩文件
EN

Unix & Linux用户
提问于 2019-09-12 16:38:39
回答 1查看 387关注 0票数 1

我有一个文件夹的77K PDF(~500 GB的大小)。我想将它们压缩到77个压缩文件中,每个文件包含1000个PDF,这样它们就更易于上传和与同行共享。我不知道如何在bash中编写for循环并在那里使用zip命令,但我在问题中看到了一些例子。有人能帮我一下吗?

文件名如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
FinalRoll_MR_ACNo_@PartNo_%%.pdf

@和%%是数字。如果我能在像archive_1.tar.gz这样的文件中压缩前1000个文件,那就太棒了!如果我们能按字母顺序保留文件的顺序,那就更好了!

我正在使用运行Ubuntu的AWS ec2实例。

提前感谢!

EN

回答 1

Unix & Linux用户

发布于 2019-09-12 20:02:09

您可以使用这个awk脚本来创建shell脚本。检查compress.sh,然后执行它:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ls *.pdf | awk 'BEGIN {ORS=""; print "#!/bin/sh"; } NR%1000 == 1 {  print "\nzip Archive_" NR ".zip"; } { print " \\\n" $0; }' > compress.sh
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/541499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文