Skip to content

Latest commit

 

History

History
218 lines (157 loc) · 5.51 KB

File metadata and controls

218 lines (157 loc) · 5.51 KB
external help file Locale Module Name ms.date online version schema title
Microsoft.PowerShell.Archive-help.xml
en-US
Microsoft.PowerShell.Archive
09/03/2024
2.0.0
Expand-Archive

Expand-Archive

SYNOPSIS

Extracts files from a specified ZIP archive file.

SYNTAX

Path (Default)

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

LiteralPath

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

DESCRIPTION

The Expand-Archive cmdlet extracts files from a specified zipped archive file to a specified destination folder. An archive file allows multiple files to be packaged, and optionally compressed, into a single zipped file for easier distribution and storage.

The Expand-Archive cmdlet uses the System.IO.Compression.ZipArchive API to compress files. The API limits the maximum file size to 2GB. The .NET API works with files that conform to the official ZIP file format specification by PKWARE Inc. For more information, see System.IO.Compression.ZipArchive.

EXAMPLES

Example 1: Extract the contents of an archive

This example extracts the contents of an existing archive file into the folder specified by the DestinationPath parameter.

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

In this example, the LiteralPath parameter is used because the filename contains characters that could be interpreted as wildcards.

Example 2: Extract the contents of an archive in the current folder

This example extracts the contents of an existing archive file in the current folder into the folder specified by the DestinationPath parameter.

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

PARAMETERS

-DestinationPath

By default, Expand-Archive creates a folder in the current location that's the same name as the ZIP file. The parameter allows you to specify the path to a different folder. The target folder is created if it doesn't exist.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: 1
Default value: A folder in the current location
Accept pipeline input: False
Accept wildcard characters: False

-Force

Use this parameter to overwrite existing files. By default, Expand-Archive doesn't overwrite.

Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-LiteralPath

Specifies the path to an archive file. Unlike the Path parameter, the value of LiteralPath is used exactly as it's typed. Wildcard characters aren't supported. If the path includes escape characters, enclose each escape character in single quotation marks, to instruct PowerShell not to interpret any characters as escape sequences.

Type: System.String
Parameter Sets: LiteralPath
Aliases: PSPath

Required: True
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-PassThru

Causes the cmdlet to output a list of the files expanded from the archive.

Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Path

Specifies the path to the archive file.

Type: System.String
Parameter Sets: Path
Aliases:

Required: True
Position: 0
Default value: None
Accept pipeline input: True (ByPropertyName, ByValue)
Accept wildcard characters: False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases: cf

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet isn't run.

Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases: wi

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

INPUTS

System.String

You can pipe a string that contains a path to an existing archive file.

OUTPUTS

None

By default, this cmdlet returns no output.

System.IO.FileSystemInfo

When you use the PassThru parameter, this cmdlet returns a list of files that were expanded from the archive.

NOTES

The Compress-Archive cmdlet uses UTF-8 encoding. Other ZIP archive tools may use a different encoding scheme. When extracting files with filenames not stored using UTF-8 encoding, Expand-Archive uses the raw value found in the archive. This can result in a filename that's different than the source filename stored in the archive.

RELATED LINKS

Compress-Archive