我已经尝试了一段时间,相信我已经很接近这个了,但是我对 Unix 还很陌生,所以一直觉得这很困难。
我有一个文件夹,其中包含许多文件夹,其中一些文件夹中有 zip 文件,而另一些则没有。我正在尝试解压缩任何子目录中的所有 zip 文件。
例如我有:
文件/A/something.java
文件/B/somezipfile.zip
文件/C/someotherfile.zip
文件/D/AnotherZipFile.zip
我想解压缩它们(假设 zip 只包含 .java 文件),得到如下结果:files/A/something.java
文件/B/javafile.java
文件/C/someotherfilefromzip.java
文件/D/Anotherfile.java
我不介意解压缩后 ZIP 文件是否保留或被删除,两者都可以。
到目前为止我所尝试的。
1)我希望我可以使用我不熟悉的管道,如下所示:
find . -name *.zip | unzip
这行不通。
2)我花了一些时间搜索,我使用在线解决方案最接近的是:
find . -name '*.zip' -exec unzip '{}' ';'
这解压缩,但将它们解压缩到当前工作目录中,我希望它们解压缩到位。我也不明白这个我想学习的命令。
任何帮助深表感谢。
谢谢,