Как перечислить файлы в виде zip-файла в powershell?

Я новичок в powershell и ищу список всех файлов, содержащихся в zip-файлах в каталоге. Я нене хочу использовать какой-либо сторонний инструмент.

Structure of the directory is
mydir > dir
a.zip
b.zip
c.zip

with each file containing files named 1.txt or 2.txt or 3.txt

I am trying to get an output in the form

a.zip:1.txt
a.zip:2.txt
b.zip:files\3.txt
b.zip:4.txt
c.zip:1.txt
d.zip:10.txt 

и так далее.

К сожалению, моя среда не 4.5, а 4.0. Я смог написать этот код, но он все еще нуждается в большом разборе для очистки, так как unzip дает много дополнительной информации.

$packagedir="C:\Packages"
$unzipcmd = "c:\bins\unzip.exe -l"
$unmatchstr = "*Archive*"
pushd .
cd $packagedir

$filelist= Get-ChildItem -Recurse | Select-Object -ExpandProperty FullName

 foreach ($item in $filelist) 
 {$ziplist = Invoke-Expression "$unzipcmd $item"; 
 foreach ($item2 in $ziplist) 
  {
   if ($item2.Contains("Archive") )
   {

   }
   else
   {
     echo $item "::" $item2}} 
   }
popd

Есть ли более простой способ разобрать это. В выводе unzip -l содержится много дополнительной информации, такой как заголовки столбцов, разделители и даты и другие даты перед каждым именем файла.

Ответы на вопрос(3)

Ваш ответ на вопрос