【发布时间】:2018-10-12 19:07:48
【问题描述】:
我有一个“ZIP”文件,当我们提取它时,我们有 1 个“EXE”文件,位于 4-5 个子文件夹深度级别内。
我想获取那个“EXE”文件并复制到另一个文件夹中。如何使用 PowerShell?
我在下面尝试过,但它会复制所有 ZIP 内容,
$shell = New-Object -ComObject shell.application
$zip = $shell.NameSpace("Source Path")
foreach ($item in $zip.items()) {
$shell.Namespace("Destination Path").CopyHere($item)
}
【问题讨论】:
-
1) 解压zip文件到某个目录; 2)使用
Get-ChildItem与-Filter和-Recurse定位.exe文件; 3)管道到Copy-Item并指定目的地。 -
如果您不提取整个 zip 文件,您可能需要创建一个函数,您可以递归调用该函数来爬取 zip 中的文件夹,以便能够找到 exe 文件以便仅提取该文件。
标签: powershell