使用PowerShell 2.0遍历目录并打印客户端中的文件?

3

使用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
以下命令可以解决问题——遍历目录中的所有文件,获取它们的内容并将内容发送到当前打印机。我已经测试过了,它可以正常工作:
Get-ChildItem . -filter *.* -recurse | get-content | out-printer

它会获取当前文件夹中的所有文件。


是的,它适用于已经映射到Windows资源管理器的普通目录。 - Senior Systems Engineer
这是我用来遍历目录的另一个脚本: - Senior Systems Engineer
这个脚本还会返回子目录,这似乎不是问题所要求的。 - Chip McCormick

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接