これを使用してください:
unzip -l filename | awk 'BEGIN { OFS="" ; ORS="" } ; { for ( i=4; i<NF; i++ ) print $i " "; print $NF "\n" }' | xargs -I{} rm -v {}
懐疑的な場合はこれを使用してください (確認のプロンプトが表示されます)
unzip -l filename | awk 'BEGIN { OFS="" ; ORS="" } ; { for ( i=4; i<NF; i++ ) print $i " "; print $NF "\n" }' | xargs -I{} rm -iv {}
あなたは大まかな場所にいます。標準の zipinfo(1)
ユーティリティは、アーカイブから明確なファイル名を取得するメカニズムを提供しません。 でも 、あなたは近づくことができます:
zipinfo -1 /path/to/zip/file.zip | xargs -d '\n' rm -i
どのファイルにも改行が含まれていないことが確実な場合は、 -i
を削除できます rm(1)
へのオプション (これは確かに面倒です)。
unzip -Z -1 <filename.zip> | xargs -I{} rm -v {}
-Z
のおかげで仕事をする zipinfo
を呼び出す ユーティリティと -1
オプションは、ファイル名のみを印刷するように指示します
この詳細については、man unzip
を参照してください。 と man 1 zipinfo
コマンド