【发布时间】:2013-02-11 13:36:09
【问题描述】:
我已经尝试了一段时间,相信我已经很接近这个了,但我对 Unix 还很陌生,所以一直觉得这很困难。
我有一个文件夹,其中包含许多文件夹,其中一些包含 zip 文件,而另一些则没有。我正在尝试解压缩任何子目录中的所有 zip 文件。
例如我有:
文件/A/something.java
文件/B/somezipfile.zip
文件/C/someotherfile.zip
文件/D/AnotherZipFile.zip
我想解压缩它们(假设 zip 仅包含 .java 文件),得到如下结果: 文件/A/something.java
文件/B/javafile.java
files/C/someotherfilefromzip.java
files/D/Anotherfile.java
我不介意ZIP文件在解压缩后是保留还是删除,都可以。
到目前为止我已经尝试过什么。
1) 我希望我可以使用管道,我是新手,像这样:
find . -name *.zip | unzip
这不起作用。
2)我花了一些时间搜索,我使用在线解决方案最接近的是:
find . -name '*.zip' -exec unzip '{}' ';'
这会解压缩,但会将它们解压缩到当前工作目录中,我希望它们解压缩到位。我也不明白这个我想学习的命令。
非常感谢任何帮助。
谢谢,
【问题讨论】: