web-dev-qa-db-ja.com

自己解凍型アーカイブを作成するための7-Zipのコマンドライン引数とは何ですか?

私はいたるところを見て、誰からも正解を見つけることができませんでした。

C:\ Tempの内容を自己解凍型のTemp.exe(7z形式)というファイルにパッケージ化する場合、バッチファイルで行うにはどうすればよいですか?

これは機能しません:

"C:\Program Files\7-Zip\7z.exe" a -t7z -mx5 -sfx 7z.sfx directoryname archive.exe -mmt

私がそこから得たのは、7z.sfxと呼ばれる自己解凍型アーカイブです。これを理解することはできません。

8
djangofan

私はそれをいじった後にそれを理解しました:

:: Zip
"C:\Program Files\7-Zip\7z.exe" a archive.exe -mmt -mx5 -sfx dirname
pause
9
djangofan

あなたが抱えていた問題は、7-Zipが引数のスペースを好まないということです。だからあなたが欲しかったのはもっと次のようなものでした:

"C:\Program Files\7-Zip\7z.exe" a archive.exe -mmt -mx5 -sfx7z.sfx dirname
4
MrPhilTX

これは機能するはずです:

"C:\Program Files\7-Zip\7z.exe" a -t7z -mx5 -sfx archive.exe directoryname -mmt

(追記:Program Files\7-ZipPATH環境変数に追加すると、7z.exeではなく"C:\Program Files\7-Zip\7z.exe"としてファイルに直接アクセスできます)

2
Sathyajith Bhat

基本的にしてください。マニュアルにはデフォルトが記載されています。

  • タイプは7z
  • 圧縮方法は5 ( 使用する 0 for copy and 9 for ltra
  • -mmtはマルチスレッド用であり、マニュアルに定義がないため、時代遅れになる可能性があります。)

したがって、これは基本的な答えを次のように与えます。

7z a -sfx archive.exe dir
1
Todd Partridge

7-Zipには、7z.exeというコマンドラインバージョンがあり、7-ZipのWebサイトからダウンロードできます。自己解凍型インストーラーを作成するには、-sfxフラグに続けて圧縮量の数値を使用します。

0
Daisetsu