web-dev-qa-db-ja.com

自動名前変更で複数の7zファイルを抽出します

7zファイルがたくさんありますが、そのうちのいくつかには同じ名前のファイルが含まれています。したがって、自動名前変更を行いたいと思います。

私は次のようなことができます

find ./all -exec 7z x -pabc123 -oall/xml {} \;

すべてのファイルを抽出しますが、これにより、各アーカイブについて、名前を自動変更するかどうかを尋ねられます。一度聞いてもらう方法はありますか?それとも、コマンドラインオプションとしてそれを渡しますか?

(パスワードがあるため、7 Zipを使用する必要があることに注意してください。)

5
Xodarap

p7Zipマニュアル から:

-ao(上書きモード)スイッチ

抽出中に上書きモードを指定して、ディスクにすでに存在するファイルを上書きします。

構文

-ao[a | s | t | u ]

スイッチの説明

-aoaプロンプトなしで既存のファイルをすべて上書きします。
-aos既存のファイルの抽出をスキップします。
-aou aUは抽出ファイルの名前を変更します(たとえば、name.txtname_1.txtに名前が変更されます)。
-aot既存のファイルの自動名前変更(たとえば、name.txtname_1.txtに名前変更されます)。

7z x test.Zip -aoa

test.Zipアーカイブからすべてのファイルを抽出し、プロンプトなしで既存のファイルを上書きします。

このスイッチで使用できるコマンド

e(抽出)x(フルパスで抽出)

こちらもご覧ください

スイッチ: -y(すべてのクエリで[はい]と仮定)

-aouまたは-aotコマンドの7zスイッチのいずれかを使用すると、必要な処理を実行できます。 g .:

find all -exec 7z x -aou [OPTIONS...] {} \;
5
David Foerster