Powershell Meta Data没有返回结果?

时间:2014-08-08 18:44:12

标签: powershell metadata

我试图在目录中获取图片的尺寸,并且由于某种原因,下面的代码没有返回值? $ Picdata是空的?任何想法..

$picdata = Get-FileMetaData -folder (Get-childitem ($SourceFolder + "\" + $Source.Name + "\Folder1") -Recurse -Directory).FullName
$picdata |Select 'Dimensions'

1 个答案:

答案 0 :(得分:1)

在我快速进行谷歌搜索之后,看起来你正在引用一篇文章"嘿,脚本专家": http://blogs.technet.com/b/heyscriptingguy/archive/2014/02/06/use-powershell-to-find-metadata-from-photograph-files.aspx

看起来你可能试图在没有完整代码的情况下调用该函数。

代码可在此处找到: http://gallery.technet.microsoft.com/scriptcenter/get-file-meta-data-function-f9e8d804

我刚刚在一个文件夹上测试了脚本,它看起来效果很好。只需更改最后一行中的路径即可指向您的文件夹。

Function Get-FileMetaData 
{ 

 Param([string[]]$folder) 
 foreach($sFolder in $folder) 
  { 
   $a = 0 
   $objShell = New-Object -ComObject Shell.Application 
   $objFolder = $objShell.namespace($sFolder) 

   foreach ($File in $objFolder.items()) 
    {  
     $FileMetaData = New-Object PSOBJECT 
      for ($a ; $a  -le 266; $a++) 
       {  
         if($objFolder.getDetailsOf($File, $a)) 
           { 
             $hash += @{$($objFolder.getDetailsOf($objFolder.items, $a))  = 
                   $($objFolder.getDetailsOf($File, $a)) } 
            $FileMetaData | Add-Member $hash 
            $hash.clear()  
           } #end if 
       } #end for  
     $a=0 
     $FileMetaData 
    } #end foreach $file 
  } #end foreach $sfolder 
} #end Get-FileMetaData


$picdata = Get-FileMetaData -Folder 'C:\users\Public\Pictures' | select name, Dimensions
$picdata