PowerShell查询和删除打印任务操作代码实例
适用于windows 8.1或server 2012 r2
windows 8.1 和 server 2012 r2上自带了一个powershell组件:“printmanagement“,它包含了所有管理本机和远程打印机的命令。
在之前的小技巧中,我们演示了如何读取打印机任务。每一个打印任务都有一个属性jobstatus ,用来表示该任务是否打印成功。
所有的状态可以这样获取:
ps> import-module printmanagement
ps> [microsoft.powershell.cmdletization.generatedtypes.printjob.jobstatus]::getnames([microsoft.powershell.cmdletization.generatedtypes.printjob.jobstatus])
normal
paused
error
deleting
spooling
printing
offline
paperout
printed
deleted
blocked
userintervention
restarted
complete
retained
renderinglocally
接下来就可以过滤已存在的任务了。比如你想列出打印任务是否已经完成,或者遇到了故障:
$computername = $env:computername
get-printer -computername $computername | foreach-object {
get-printjob -printername $_.name -computername $computername |
where-object { $_.jobstatus -eq 'complete' -or $_.jobstatus -eq 'error' -or $_.jobstatus -eq 'printed'}
}
删除打印任务也非常简单,remove-printjob即可:
$computername = $env:computername
get-printer -computername $computername | foreach-object {
get-printjob -printername $_.name -computername $computername |
where-object { $_.jobstatus -eq 'complete' -or $_.jobstatus -eq 'error' -or $_.jobstatus -eq 'printed'}
} |
remove-printjob -cimsession $computername
如对本文有疑问,
点击进行留言回复!!
相关文章:
-
-
-
-
-
-
-
-
-
Flink组件解析
1.什么是flink?Flink 是一个框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。Flink ...
[阅读全文]
-
-
网友评论