コマンドラインから 7-zip を使用して、アーカイブ .gz からいくつかのファイル .dat を自動抽出しています。
要点は次のとおりです。
Mother_folder には複数の Daughter_subfolder が含まれています。各 Daughter には *.gz ファイルが含まれています。
7-zip で抽出中に利用可能なすべてのサブフォルダーを検索するようにしたいのですが、この問題に適した構文はありますか?
ありがとう
答え1
私は自分にとってうまく機能するスクリプトを書くことができました:
cd C:\\...\\Mother_folder
FOR /D /r %%g IN ("*") DO (
pushd %%g
FOR /R %%f IN (*.gz) DO (
"C:\...\7-Zip\7z.exe" e -o%%g %%f
)
popd
)
Mother_folder のすべてのサブフォルダーをループし、毎回それらを現在のディレクトリとして使用します: pushd %%g。
各サブフォルダーでは、すべての *.gz アーカイブが %%g 現在のディレクトリに抽出され、その後ループは次のサブフォルダーに移動して、抽出する他の *.gz アーカイブを検索します。
抽出したファイルの場所を変更する場合は、-o%%g を -o%%C:..\directory_you_want に変更できます。