web-dev-qa-db-ja.com

Windowsにはコマンドライン用の組み込みZipコマンドがありますか?

Windows Explorer(少なくともWindows XP以降)はZipファイルの基本的なサポートをいくつか備えているため、同等のコマンドラインがあるはずですが、その兆候を見つけることができません。

Windows(XP、Vista、7、8、2003、2008、2013)には組み込みのコマンドラインZipツールが付属していますか、それともサードパーティのツールを使用する必要がありますか?

119
Electrons_Ahoy

これはWindowsには組み込まれていませんが、 Resource Kit ToolsCOMPRESSとして含まれています。

C:\>compress /?

Syntax:

COMPRESS [-R] [-D] [-S] [ -Z | -ZX ] Source Destination
COMPRESS -R [-D] [-S] [ -Z | -ZX ] Source [Destination]

Description:
Compresses one or more files.

Parameter List:
-R Rename compressed files.

-D Update compressed files only if out of date.

-S Suppress copyright information.

-ZX LZX compression. This is default compression.

-Z MS-Zip compression.

Source Source file specification. Wildcards may be
used.

Destination Destination file | path specification.
Destination may be a directory. If Source is
multiple files and -r is not specified,
Destination must be a directory.

例:

COMPRESS temp.txt compressed.txt
COMPRESS -R *.*
COMPRESS -R *.exe *.dll compressed_dir
56
Bryan

私が知っていることではありません。サードパーティのツールに関する限り、7Zipにはかなりのコマンドラインインターフェースがあり、バイナリはアプリのアプリのディレクトリにあるアプリと一緒に配布できるので、事前にインストールしておく必要はありません。

25
Chris
21
John Rennie

.Net 4.5にはこの機能が組み込まれており、PowerShellで利用できます。 Server 2012、Windows 8を使用しているか、.Net 4.5を手動でインストールする必要があります。

[Reflection.Assembly]::LoadWithPartialName("System.IO.Compression.FileSystem")
$Compression = [System.IO.Compression.CompressionLevel]::Optimal
$IncludeBaseDirectory = $false

$Source = "C:\Path\To\Source"
$Destination = "C:\CoolPowerShellZipFile.Zip"

[System.IO.Compression.ZipFile]::CreateFromDirectory($Source,$Destination,$Compression,$IncludeBaseDirectory)
14
MDMarra

スーパーユーザーサイトで見つかった別の解決策は、.batファイルでWindowsネイティブcomオブジェクトを使用します。

Windowsの組み込み機能のみを使用してコマンドプロンプトからファイルをZipファイルに圧縮できますか?

6
Krilivye

このための単一の単純なPowerShellコマンドがあります。 (PowerShell v5.0以降)

圧縮するには:

Compress-Archive -LiteralPath 'C:\mypath\testfile.txt' -DestinationPath "C:\mypath\Test.Zip"

解凍するには:

Expand-Archive -LiteralPath "C:\mypath\Test.Zip" -DestinationPath "C:\mypath" -Force

出典:

@Ramhoundに感謝

0
cowlinator