Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Скрипт для сжатия jpg - в папках и подпапках, с переименованием одинаковых ф.. (http://forum.oszone.net/showthread.php?t=245327)

dark-------13 23-10-2012 22:09 2010960

Скрипт для сжатия jpg - в папках и подпапках, с переименованием одинаковых ф..
 
Вот решил поделиться скриптом.

Скрипт для сжатия файлов jpg - в папках и подпапках, с переименованием одинаковых файлов.

Код:


import-module image
$in="e:\test\in"
$out="e:\test\out"
$folder = "$out\res"
md $folder -force
$filter = new-Imagefilter | Add-ConversionFilter -passThru –typeName jpg -quality 50
Get-ChildItem $in -include *.jpg -Recurse | Get-Image | Set-ImageFilter -filter $filter |
Set-ImageFilter -filter $filter | Save-image -fileName {$_.FullName -replace ".jpg$","-small.jpg"}
Get-ChildItem $in -include *-small.jpg -Recurse | ? {!$_.PSIsContainer} | move-item -Destination {
        $folder2 = "$folder\"
        $fpath = Join-Path $folder2 $_.Name
        $i = 1
        while($true) {
                if (Test-Path $fpath) {
                        $fpath = "{0}\{1}_{2}{3}" -f $folder2,$_.basename,$i,$_.extension
                        $i++
                }
                else {
                        $fpath
                        break
                }
        }
}


Farxat 16-04-2014 16:07 2338962

Это конечно здорово, еще сам модуль для PS, именуемый в скрипте image и вообще будет класс


Время: 03:25.

Время: 03:25.
© OSzone.net 2001-