在PowerShell中使用7z解压缩文件的命令是什么?
set-alias sz "$env:ProgramFiles\7-Zip\7z.exe"
sz x $zipfilePath $destinationUnzipPath -aoa -r;
该命令工作正常,但它说没有要处理的文件,一切正常而不是解压缩文件?
答案 0 :(得分:2)
这最终对我有用sz x -o$destinationUnzipPath $zipfilePath -r ;
答案 1 :(得分:1)
别名不是为了它,它们意味着代理其他命令,而不是命令+参数。
要实现您想要的功能,您需要使用以下功能:
function sz($args) {
Start-Process "$env:ProgramFiles\7-Zip\7z.exe" -ArgumentList $args
}
答案 2 :(得分:1)
我不想使用别名,函数或Start-Process
。在网上浏览了一下之后,我发现了这个宝石(我不记得在哪里):
& ${env:ProgramFiles}\7-Zip\7z.exe x $zipfilePath "-o$($destinationUnzipPath)" -y
如果您不想看到7z的消息,也可以在末尾添加> $null
!
答案 3 :(得分:0)
使用7zip PowerShell模块,不是很麻烦
# Install 7zip module
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
Set-PSRepository -Name 'PSGallery' -SourceLocation "https://www.powershellgallery.com/api/v2" -InstallationPolicy Trusted
Install-Module -Name 7Zip4PowerShell -Force
# Extract 7zip file
$sourcefile = "c:\source\sample.7z"
Expand-7Zip -ArchiveFileName $sourcefile -TargetPath 'c:\destinaation'