RARまたは7-Zip形式へのドライラン圧縮を行う方法はありますか? (コマンドラインは問題ありません。)私が取得したいのは、正確な圧縮サイズの見積もりです。
WinRARと7-Zipでそのオプションを見つけようとしましたが、CLスイッチも調べましたが、うまくいきませんでした。
gzip
を使用してZip圧縮(deflate)をプレビューし、xz
を使用して7Zip圧縮(lzma)を次のようにプレビューできます。
gzip -c $1 | wc -c
xz --format=lzma -c $1 | wc -c
オプションで、numfmt --to=iec
にパイプして、バイト数を読みやすくします。
単一のファイルに対してのみ機能し、カウントにアーカイブヘッダーがないことに注意してください。
Windowsに必要なすべてのバイナリは git sdk package にあります。
私はWinRARまたは7-Zipに精通していませんが、WinRARのオンラインヘルプをざっと見ると、-P
および-inul
フラグを使用して圧縮出力をstdout
に送信できることがわかります。これを、LinuxおよびMacOSで標準であり、Linux用のWindows 10 Windowsサブシステムの一部としてWindowsで使用できるwc
ユーティリティまたは GnuWin32 utilsにパイプできます(textutils
パッケージを参照)。
例えば:
rar -P -inul <rest of WinRAR parameters...> | wc -c
これにより、圧縮ファイルがディスクに書き込まれた場合の文字数(バイト)が返されます。