1

通过 Powershell密切关注此智能图像搜索

我有以下 PowerShell 脚本:-

Add-Type -Assembly System.Drawing

function Get-Image {
    $input | ForEach-Object { [Drawing.Image]::FromFile($_.FullName) }
}

Get-ChildItem -Path 'C:\Images' -Filter *.jpg -Recurse | Get-Image | ? { $_.Width -gt 1280 -or $_.Height -gt 1280 }

问题是,这会返回一个 Image 对象列表。

我基本上想要一个宽度或高度大于 1280 像素的文件对象列表(最终将是图像)。

我需要以某种方式将图像对象转换回文件对象吗?

最后通牒是大于 1280 像素的文件名列表。

4

1 回答 1

3
function Get-Image{ 
process {
          $file = $_
          [Drawing.Image]::FromFile($_.FullName)  |
          ForEach-Object{           
            $_ | Add-Member -PassThru NoteProperty FullName ('{0}' -f $file.FullName)
          }
         }
}

然后

Get-ChildItem -Path 'C:\Images' -Filter *.jpg -Recurse | Get-Image | ? { $_.Width -gt 1280 -or $_.Height -gt 1280 } | select -expa Fullname | get-item
于 2012-12-06T10:43:48.290 回答