我一直在嘗試一段時間,並相信我相當接近這一點,但我對Unix相當新,所以一直覺得這很難。找到所有的拉鍊,並解壓到位 - Unix
我有一個文件夾,其中包含許多文件夾,其中一些文件夾中有zip文件,有些文件夾沒有。我試圖解壓縮任何子目錄中的所有zip文件。
例如,我有:
文件/ A/something.java
文件/ B/somezipfile.zip
文件/ C/someotherfile.zip
文件/ d/AnotherZipFile.zip
我想解壓縮它們(假設zip只包含.java文件),得到如下結果: files/A/something.ja VA
文件/ B/javafile.java
文件/ C/someotherfilefromzip.java
文件/ d/Anotherfile.java
我不介意的ZIP文件保持或者解壓縮後刪除,或者很好。
我到目前爲止試過的東西。
1)我希望我可以用管道,我是新來的,就像這樣:
find . -name *.zip | unzip
這是行不通的。
2)我花了一些時間來尋找,最近我得到了使用的解決方案在線是:
find . -name '*.zip' -exec unzip '{}' ';'
這種解壓,但他們解壓縮到當前的工作目錄,我希望他們在地方解壓。我也不明白這個我想要學習的命令。
任何幫助,非常感謝。
感謝,
這看起來像一個很好的答案,你有可能(很快)幫助我理解它嗎?我對這一點感到困惑,因爲它需要-exec和{}標記。 – ThePerson 2013-02-11 13:58:02
新增說明 – 2013-02-11 15:08:39
如果zips文件名中有空格,我似乎遇到問題,有沒有簡單的解決方法? – ThePerson 2013-02-11 15:14:47