Использование PowerShell 2.0 для обхода каталога и печати файлов на клиенте? - PullRequest
3 голосов
/ 21 сентября 2010

С помощью Powershell 2.0 можно ли проходить через каталог и печатать файлы на клиентском принтере?

Я получил приведенный ниже скрипт PowerShell.Он отлично работает на общем сетевом диске, но как мне на самом деле изменить и использовать его для запроса содержимого папок WebDav, а затем распечатывать только расширение файла .PDF на стороне клиента (не на стороне сервера)?

Скрипт PowerShell для обхода каталога:

function print-file($file) {
    begin {
        function internal-printfile($thefile) {
            if ($thefile -is [string]) {
                $filename = $thefile
            }
            else {
                if ($thefile.FullName -is [string] ) {
                    $filename = $THEfile.FullName
                }
            }
            $start = new-object System.Diagnostics.ProcessStartInfo $filename
            $start.Verb = "print"
            [System.Diagnostics.Process]::Start($start)
        }

        if ($file -ne $null) {
            $filespecified = $true;
            internal-printfile $file
        }
    }
    process {
        if (!$filespecified) {
            write-Host process ; internal-printfile $_
        }
    }
}

dir *.pdf -r | print-file

1 Ответ

3 голосов
/ 28 сентября 2010

Следующая команда должна сделать трюк - перебрать все файлы в каталоге, получить их содержимое и отправить содержимое на текущий принтер. Я проверил это, и он отлично работает:

Get-ChildItem . -filter *.* -recurse | get-content | out-printer

Он принимает все файлы из текущей папки.

...