Используя PowerShell, я загружаю и извлекаю файл, в котором есть каталог, и другой файл в нем (в основном это https://aka.ms/downloadazcopy-v10-windows
). Я хотел бы иметь возможность попасть в каталог после извлечения.
Итак, в PS я нахожусь на c:\AzCopyTest
при загрузке файла. Он извлекается в том же месте. Вот код для этого:
$URL = "https://aka.ms/downloadazcopy-v10-windows"
New-Item -ItemType Directory -Path c:\AzCopyTest
$Destination = "c:\AzCopyTest\zzz.zip"
$WebClient = New-Object -TypeName System.Net.WebClient
$WebClient.DownloadFile($URL, $Destination).
$ExtractLocation = "c:\AzCopyTest"
$ExtractShell = New-Object -ComObject Shell.Application
$file = $ExtractShell.NameSpace($Destination).Items()
$ExtractShell.NameSpace($ExtractLocation).CopyHere($file)
Как я могу попасть в папку после завершения извлечения? К вашему сведению, я не хочу ls
напрямую (или вместо этого вручную). Я хотел бы иметь возможность перечислить элементы в этом каталоге и получить первый каталог. azcopy_windows_amd64_10.3.4
это то, что каталог называется BTW. Теперь, когда MS выпустит новую версию (скажем, 10.3.5), каталог будет переименован, и я не хочу, чтобы go вернулся и изменил его вручную. Вы получите, куда я иду с этим ..
Я знаю, Get-ChildItem -Path ("$ExtractLocation") -Recurse
перечислит элементы в каталоге и подкаталогах. Но это, к сожалению, не служит моей цели.
Любая помощь очень ценится!