Expand-Archive

从指定的 ZIP 存档文件中提取文件。

语法

Expand-Archive
      [-Path] <String>
      [[-DestinationPath] <String>]
      [-Force]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Expand-Archive
      -LiteralPath <String>
      [[-DestinationPath] <String>]
      [-Force]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

说明

Expand-Archive cmdlet 将文件从指定的压缩存档文件提取到指定的目标文件夹。 存档文件允许将多个文件打包,还可选择性地将其压缩为单个压缩文件以便分发和存储。

Expand-Archive cmdlet 使用 System.IO.Compression.ZipArchive API 来压缩文件。 该 API 将最大文件大小限制为 2 GB。 .NET API 适用于符合 PKWARE Inc 的官方 ZIP 文件格式规范的文件。有关详细信息,请参阅 System.IO.Compression.ZipArchive

示例

示例 1:提取存档的内容

此示例将现有存档文件的内容提取到由 DestinationPath 参数指定的文件夹中。

Expand-Archive -LiteralPath 'C:\Archives\Draft[v1].zip' -DestinationPath C:\Reference

此示例中使用了 LiteralPath 参数,因为文件名包含可能会被解释为通配符的字符。

示例 2:提取当前文件夹中存档的内容

此示例将当前文件夹中某个现有存档文件的内容提取到由 DestinationPath 参数指定的文件夹中。

Expand-Archive -Path Draftv2.zip -DestinationPath C:\Reference

参数

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-DestinationPath

默认情况下,Expand-Archive 会在当前位置创建一个与 ZIP 文件同名的文件夹。 此参数允许指定其他文件夹的路径。 如果目标文件夹不存在,则会创建目标文件夹。

类型:String
Position:1
默认值:A folder in the current location
必需:False
接受管道输入:False
接受通配符:False

-Force

使用此参数覆盖现有文件。 默认情况下,Expand-Archive 不会覆盖。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-LiteralPath

指定存档文件的路径。 与 Path 参数不同,LiteralPath 的值严格按照所键入的形式使用。 不支持通配符。 如果路径包括转义符,用单引号将每个转义符括起来,以指示 PowerShell 不要将任何字符解释为转义序列。

类型:String
别名:PSPath
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-PassThru

使 cmdlet 输出从存档展开的文件列表。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Path

指定存档文件的路径。

类型:String
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

String

可以通过管道传递包含现有存档文件路径的字符串。

输出

None

默认情况下,此 cmdlet 不返回任何输出。

FileSystemInfo

使用 PassThru 参数时,此 cmdlet 返回从存档展开的文件列表。

备注

Compress-Archive cmdlet 使用 UTF-8 编码。 其他 ZIP 存档工具可能使用不同的编码方案。 如果文件名不是使用 UTF-8 编码存储的,则提取该文件时,Expand-Archive 将使用存档中找到的原始值。 这可能会导致文件名与存档中存储的源文件名不同。