2012-01-23 37 views
0

我有一个打印一堆PDF的批处理文件,我希望能够遍历打印作业发送到打印机的页数。用于检查传递到打印机的页数的命令

是否有CMD命令从特定的打印作业中拉出页码?如果你有办法做到没有依赖,很酷,但如果没有,好吧。我仍然会使用它。

回答

2

您可以使用wmic命令通过WMI获取所需信息。使用

wmic printjob get 

你会得到完整的信息有关的所有打印作业,或

wmic printjob get Caption, TotalPages 

只得到一个基本的信息。

详见http://technet.microsoft.com/en-us/library/cc784189(WS.10).aspx和更多的例子见http://www.windows-commandline.com/2011/11/manage-print-jobs-command-line.html

+0

这将是理想的,但是,试图拉文件的页码可能是困难的。打印项目时运行'WMIC printjob'会显示有关作业的信息,但根据特定标准,某些输出将为空白。例如,如果它是当前作业,则“JobStatus”字段的输出为空,但是,其他作业在输出中显示“Queued”,这使得由于分隔符移位而难以获得页面#输出。 – Mechaflash

+0

你可以使用/ format:csv开关,并用命令解析输出: for/f“tokens = 1,2,3,4 delims =,”%A in('wmic printjob get caption ^,totalpages/format: csv')做@回声。%A%B%C%D – MBu

+0

哦,很好。不知道get命令。精美的作品。 – Mechaflash