源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

PowerShell查询和删除打印任务操作代码实例

  • 时间:2020-06-22 02:22 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:PowerShell查询和删除打印任务操作代码实例
适用于Windows 8.1或Server 2012 R2 Windows 8.1 和 Server 2012 R2上自带了一个PowerShell组件:“PrintManagement“,它包含了所有管理本机和远程打印机的命令。 在之前的小技巧中,我们演示了如何读取打印机任务。每一个打印任务都有一个属性JobStatus ,用来表示该任务是否打印成功。 所有的状态可以这样获取:
[u]复制代码[/u] 代码如下:
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
接下来就可以过滤已存在的任务了。比如你想列出打印任务是否已经完成,或者遇到了故障:
[u]复制代码[/u] 代码如下:
$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即可:
[u]复制代码[/u] 代码如下:
$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
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部