私のスクリプトの初期段階では、ユーザーが提供した「x」個のファイルを解凍する必要がありました。圧縮ファイルセットには名前が重複しています(ただし内容は異なります)。つまり、zip1.zip と zip2.zip の両方に「d09483272」という名前のファイルが含まれています。
これにより複数のファイルを解凍できますが、unzip \*zip -d $M_DIR
私の場合、新しく解凍したファイルはすでに$ M_DIRの場所にあるファイルを上書きするため、非効率的です。
タイムスタンプで解凍してみてください。以下のような奇妙なネストループ(明らかに動作しません)
for zip in *zip; do
unzip -l *zip | while read file
do
unzip -p *.zip ${file} > $(date "+%H:%M:%S:%s%N").pdf
done
done
これが適切なアプローチではない場合は、より簡単な方法がありますか?アイデア?
ベストアンサー1
unzip
-manpageを見てください。
-n never overwrite existing files. If a file already exists, skip the extraction
of that file without prompting.