ZIPのダブルクリックで7-Zipの閲覧画面が開くことと、ファイルを別のフォルダーへ展開することは別の操作です。
解凍先を決めて試す場合は、各拡張子の起動設定を一括で変更する前に、練習ZIPで出力を確認します。
関連付けと展開先を分けて確認する
7-Zipは公式配布ページから入手してください。
今回の検証は、公式の7-Zip 26.03 Extraに含まれるポータブル7za.exeで行い、Windowsの既定アプリやレジストリを変更していません。
通常のZIPをダブルクリックしたときのアプリは、現在の関連付けで決まります。
閲覧画面が開いた場合は、展開先を指定して解凍する操作を選び、作成されたフォルダーを確認します。
| 操作・条件 | 今回の動作 | 確認する結果 |
|---|---|---|
| ZIPを開く | 関連付けたアプリで中身を閲覧 | 別フォルダーへの展開とは分ける |
| xコマンドで展開 | ZIP内のフォルダー構造を保持 | oneとtwoの同名ファイルを両方残す |
| 出力先が既にある | 今回のコードでは処理を止める | 新しい出力先で試す |
| ZIPのテストが失敗 | 展開を開始しない | 原本を保持して取得元を確認 |
所有練習ZIPを新しいフォルダーへ展開する
練習ZIP内のpractice-files.zipには、one/report.txtとtwo/report.txt、資料 A.txtの3ファイルがあります。
別のフォルダーにある同名ファイルが、1つへまとめられないことを確認します。
param(
[Parameter(Mandatory=$true)][string]$SevenZip,
[Parameter(Mandatory=$true)][string]$Archive,
[Parameter(Mandatory=$true)][string]$OutputFolder
)
$ErrorActionPreference = 'Stop'
if (-not (Test-Path -LiteralPath $SevenZip -PathType Leaf) -or
-not (Test-Path -LiteralPath $Archive -PathType Leaf)) {
throw '7-Zip or archive does not exist; extraction was not started.'
}
if (Test-Path -LiteralPath $OutputFolder) {
throw 'Output already exists; choose a new folder.'
}
& $SevenZip 't' $Archive
if ($LASTEXITCODE -ne 0) { throw 'Archive test failed; extraction was not started.' }
& $SevenZip 'x' $Archive ('-o' + $OutputFolder) '-aos'
if ($LASTEXITCODE -ne 0) { throw 'Extraction failed; inspect the new output folder.' }
SevenZipには存在する7z.exeまたは7za.exe、Archiveには練習ZIP、OutputFolderにはまだ存在しない出力先を指定します。
例は.\Extract-Practice.ps1 -SevenZip 'C:\Program Files\7-Zip\7z.exe' -Archive '.\practice-files.zip' -OutputFolder '.\unpacked-01'です。
このPCは.ps1のファイル実行が無効だったため、同じコードをPowerShell入力として実行しました。
入力で試す場合は& { コード全体 } -SevenZip '7-Zip実行ファイル' -Archive '練習ZIP' -OutputFolder '新しい出力先'の形で指定し、実行ポリシーを変更する必要はありません。
tによるテストはアーカイブの整合確認で、内容が安全なファイルかどうかの判定ではありません。
出所が不明なZIPではなく、同梱した所有練習データで試してください。

結果の照合と中止・戻し方
今回の実行では3ファイルの内容が元のZIPと一致し、ZIP自体のSHA-256も実行前後で一致しました。
出力先がある場合の再実行と、壊れたZIPは拒否されました。
展開途中に失敗した場合は、新しい出力先に途中のファイルが残ることがあります。
成功した出力と混ぜず、エラーを控えて別の新しいフォルダーで試してください。
関連付けは変えていないので、戻す既定アプリの設定はありません。
旧記事の多数の拡張子をまとめて変える.regは、この手順では使用せず、今回作成した出力だけを別名で保管すれば元のZIPを残せます。
実CLIの展開は確認済みですが、7-ZipのGUIやZIPのダブルクリックによる操作は未検証です。
公式のFAQも参照してください。
最終確認:2026年10月3日。
関連するファイル操作の記事
| やりたいこと | 最初に読む記事 |
|---|---|
| SSDが一覧に出ない | 接続の4段階を確認 |
| 名前が見つからない | 削除前の名前照合 |
| 共有パスを渡す | UNCとSMBの文字列変換 |
| フォルダーをまとめる | CFUと設定の戻し方 |
ファイル操作の関連記事と旧コードの区別
関連記事やGitHubの旧コードは、本稿の練習ZIPと異なる場合があります。
今回の確認には本稿のZIPと入力例を使ってください。






