我在文件夾中有許多壓縮文件,說a.zip b.zip
等。我想將這些文件解壓縮並放到相應的目錄中,例如a,b
。您可以爲我推薦一些unix腳本。Unix:遞歸解壓縮各自文件夾中的.zip文件
2
A
回答
6
應該不會有太大的硬盤(未經測試!):
#!/bin/bash
for zip in *.zip ; do
dir=${zip%.zip}
mkdir "$dir"
unzip -rd "$dir" "$zip"
done
1
您可以使用UNIX解壓工具,如下所示:
#!/bin/bash
for f in *.zip
do
echo "unzipping $f"
unzip $f -d ${f%.*}
done
運行在目錄中,該腳本將解壓所有的zip文件在你想要的時候,說a.zip,b.zip將分別解壓到目錄a和b。
1
This previous post幫助我實現了同樣的功能;我甚至創建一個腳本來幫助自己記住我的電腦上:
$ ls *.zip|awk -F'.zip' '{print "unzip "$0" -d "$1}'|sh
同樣,你可以創建一個alias
執行bash
功能:
$ alias munzip='for f in *.zip; do unzip -d "${f%*.zip}" "$f"; done'
和幹運行,預先測試:
$ alias testmunzip='for f in *.zip; do echo unzip -d "${f%*.zip}" "$f"; done'
只是認爲這可能有助於保持這個相關的inf o在一個頁面上,以防別人正在尋找相同的效果。