我的主目錄中有多個 zip 文件,需要遞歸地重新打包。這些檔案有空格、撇號、底線等。
advzip
不起作用,因為它抱怨不支援的壓縮方法(這是它們需要重新打包的原因)。所有這些檔案都需要解壓縮,它們只需要透過一些自動化功能重新壓縮/打包,因為有數千個檔案。
檔案最初是在 Windows 下使用 MP3+G Toolz 建立的卡拉 OK 庫。
作業系統:Linux Mint 18
腳本編寫:新手
for file in *.zip
do
unzip -j "$file"
rm -f "$file"
zip -mq "$file" *.mp3 *.cdg *.MP3 *.CDG *.Mp3 *.Cdg
rm -f *.mp3 *.cdg *.MP3 *.CDG *.Mp3 *.Cdg
done
以上是我正在尋找的最標準的內容。但由於我不擅長腳本,我不確定如何為子目錄中的所有 zip 製作它。檔案名稱範例:
SC0000-01 - Someone - Something.zip
zip 中的檔案是
SC0000-01 - Someone - Something.cdg
SC0000-01 - Someone - Something.mp3
答案1
當提到 advzip 時,我假設您使用 Linux。在這裡您可以編寫一個循環每個文件的簡單腳本
for f in *;
do;
unzip $f;
done
希望這會有所幫助,否則建議提供更多詳細資訊。
答案2
除非我只是讓事情變得比需要的更複雜:
find . -name "*.zip" -print0 | while read -d $'\0' file
do
unzip -j "$file"
rm -f "$file"
zip -mq "$file" *.mp3 *.cdg *.MP3 *.CDG *.Mp3 *.Cdg
rm -f *.mp3 *.cdg *.MP3 *.CDG *.Mp3 *.Cdg
done