pengembangan-web-mp-pd.com

Apakah Windows memiliki perintah Zip bawaan untuk baris perintah?

Karena Windows Explorer (setidaknya Windows XP) memiliki beberapa dukungan dasar untuk file Zip, sepertinya harus ada yang setara dengan command-line, tapi sepertinya saya tidak dapat menemukan satu pun tanda.

Apakah Windows (XP, Vista, 7, 8, 2003, 2008, 2013) dikirimkan dengan alat Zip baris perintah bawaan, atau apakah saya harus tetap menggunakan alat pihak ketiga?

119
Electrons_Ahoy

Itu tidak dibangun ke dalam Windows, tetapi di Resource Kit Tools as COMPRESS,

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.

Contoh:

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

Bukannya aku sadar. Sejauh alat pihak ketiga berjalan, 7Zip memiliki antarmuka baris perintah yang cukup bagus dan biner dapat didistribusikan dengan aplikasi Anda di direktori aplikasi, jadi Anda tidak harus bergantung pada itu sedang diinstal sebelumnya.

25
Chris
21
John Rennie

.Net 4.5 memiliki fungsi ini bawaannya, dan dapat dimanfaatkan oleh PowerShell. Anda harus menggunakan Server 2012, Windows 8, atau .Net 4.5 diinstal secara manual.

[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

Solusi lain yang ditemukan di situs superuser menggunakan objek windows native com dalam file .bat:

Bisakah Anda mengaitkan file dari perintah Prompt menggunakan HANYA kemampuan bawaan Windows untuk mengarsipkan file?

6
Krilivye

Ada satu perintah PowerShell sederhana untuk ini. (PowerShell v5.0 +)

Ke Zip:

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

Untuk unzip:

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

Sumber:

Terima kasih khusus kepada @Ramhound

0
cowlinator