PowerShell - 从压缩文件中提取文件类型

3

我有一个随机命名的zip文件,它被包含在一个随机命名的zip文件中。我正在修改以下示例代码:

$shell = new-object -com shell.application
 $zip = $shell.NameSpace(“C:\howtogeeksite.zip”)
foreach($item in $zip.items())
 {
 $shell.Namespace(“C:\temp\howtogeek”).copyhere($item)
 }

外部zip文件包含数百个我不需要的文件以及一个内部zip文件- 我该如何修改上面的源代码,只获取内部zip文件呢?(可以从外部zip文件中提取所有扩展名为.zip的文件)... 请告知最简单的方法。 谢谢!


你必须知道名称或名称模式才能识别并提取它。你有这个名称或模式吗? - Jimbo
1个回答

2

在提取文件之前,您需要遍历内容并检查每个项目的文件扩展名是否为“.zip”。可以使用以下类似的代码:

$shell = new-object -com shell.application
$zip = $shell.NameSpace(“C:\howtogeeksite.zip”)

foreach($item in $zip.items()){

    if([System.IO.Path]::GetExtension($item.Path) -eq ".zip"){

        $shell.Namespace(“C:\temp\howtogeek”).copyhere($item)

    }

}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接