我想要刪除特定文件夾及其所有子文件夾中的所有* .jpg文件。寬度不等800和高度不等600(僅留下800x600 jpg圖像)。Powershell:刪除某些尺寸的圖像
有人能告訴我如何在PowerShell中做到這一點?
我知道我可以刪除與
Get-ChildItem -Path .\ -Filter *.jpg -Recurse | foreach ($_) {remove-item $_.fullname}
* .jpg圖像,但我似乎無法找到如何選擇圖像的高度/寬度。
我想要刪除特定文件夾及其所有子文件夾中的所有* .jpg文件。寬度不等800和高度不等600(僅留下800x600 jpg圖像)。Powershell:刪除某些尺寸的圖像
有人能告訴我如何在PowerShell中做到這一點?
我知道我可以刪除與
Get-ChildItem -Path .\ -Filter *.jpg -Recurse | foreach ($_) {remove-item $_.fullname}
* .jpg圖像,但我似乎無法找到如何選擇圖像的高度/寬度。
您可以使用System.Drawing.Image
.NET對象:
$(Get-ChildItem -Filter *.jpg).FullName | ForEach-Object {
$img = [Drawing.Image]::FromFile($_);
$dimensions = "$($img.Width) x $($img.Height)"
If ($dimensions -eq "800 x 600") {
Remove-Item $_
}
}
的[從PowerShell中的.png文件的詳細信息]
感謝您的回答。但是,它說FromFile「路徑格式無效」。你知道如何解決這個問題嗎? – user4132336 2014-10-11 13:38:26
您可能未在方法中傳遞有效路徑。檢查以確保文件存在 – SomeShinyObject 2014-10-11 13:49:38
我在Get-ChildItem中使用了-Path'。\',但它不起作用。我也嘗試了絕對路徑,並且我也嘗試過'。\ *'。它總是告訴我同樣的錯誤信息。 – user4132336 2014-10-11 13:54:15
可能重複(http://stackoverflow.com/questions/9552367/get-詳細信息 - 從一個PNG文件在PowerShell中) – Matt 2014-10-11 14:13:33