如何在 Powershell 中压缩/解压缩文件?

如何在 Powershell 中压缩/解压缩文件?

是否有一行程序可以在 PowerShell 中压缩/解压缩文件(*.zip)?

答案1

点网压缩允许您从 PowerShell 执行此操作。这不是一行代码,但该库将允许您编写所需的 PowerShell 脚本。

您还可以使用 COM 接口,请参阅使用 Windows PowerShell 压缩文件然后打包 Windows Vista 边栏小工具

谷歌搜索“zip powershell”或“unzip powershell”也可能会得到有用的结果。

答案2

这是您可以仅通过 Powershell 执行此操作而无需任何外部工具的方法。这会将名为 test.zip 的文件解压缩到当前工作目录中:

$shell_app=new-object -com shell.application
$filename = "test.zip"
$zip_file = $shell_app.namespace((Get-Location).Path + "\$filename")
$destination = $shell_app.namespace((Get-Location).Path)
$destination.Copyhere($zip_file.items())

答案3

现在在 .NET Framework 4.5 中,有一个压缩文件您可以像这样使用类:

[System.Reflection.Assembly]::LoadWithPartialName('System.IO.Compression.FileSystem')
[System.IO.Compression.ZipFile]::ExtractToDirectory($sourceFile, $targetFolder)

答案4

您可能希望查看PowerShell 社区扩展 (PSCX)它有专门用于此目的的 cmdlet。

相关内容