bash - 通过 bash 仅提取具有特定扩展名的文件

标签 bash ubuntu zip unzip

我第一次需要创建一个 .sh为了做某事。我的目标是解压缩很多 zip 文件夹,所以我编写了以下脚本:

for zipfiles in /downloads/*.zip; do unzip $zipfiles; done
我可以解压缩所有文件,但我注意到有些文件具有相同的名称并输入 y我可以结束这个过程。
有一种方法可以只提取具有特定扩展名的文件,例如 .docx , 而不是整个 zip 文件夹?我绝对确定没有 .docx同名。

最佳答案

您可以指定一个模式:

for zipfiles in /downloads/*.zip; do unzip "$zipfiles" '*.docx'; done
经测试可与 UnZip 6.00 一起使用.
您还可以指定 -x排除选项。

关于bash - 通过 bash 仅提取具有特定扩展名的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70612748/

相关文章:

linux - 如何在 Ubuntu 中启动 Thunderbird 并最小化启动窗口

python - 在 ubuntu 14.04 上使用 python 版本安装 MORSE 模拟器的问题

ubuntu - visual studio code 1 无法使用 xrdp 在 ubuntu 上启动

python zip和压缩多个文件

arrays - Bash:从另一个数组中删除一个数组中存在的项目

bash - 删除字符串最后一个大小写之前的所有行

ubuntu - Oracle Cloud Ubuntu实例没有公共(public)IP?

python - 比较 Pandas 系列中的前一个值和下一个值

iPhone:在命令行 (Mac OS X) 中压缩 .app 文件会删除 CodeSigning

sublimetext2 - 在 OSX 桌面上为 Sublime Text 设置环境变量