【发布时间】:2017-07-22 16:21:52
【问题描述】:
我正在尝试制作一个 PowerShell 脚本,它将更改一组特定打印机的所有驱动程序。
我有大约 200 台打印机,它们的名称以字母 Z 开头。 我还有一些不以字母 Z 开头的打印机。
我想要完成的是...任何以字母 ZEB 开头的打印机都将其驱动程序更改为“HP LaserJet 4000 系列 PS”
我已经尝试修改下面的脚本来满足我的需要,但它只是运行并且没有任何变化。
$driver = "HP LaserJet 4000 Series PS"
$pattern = 'ZEB'
$printers = gwmi win32_printer
foreach($printer in $printers){
$name = $printer.name
if($name -like $pattern){
& rundll32 printui.dll PrintUIEntry /Xs /n $name DriverName $driver
}
}
【问题讨论】:
-
$pattern = 'ZEB*' -
谢谢!这确实有效:)
-
现在我需要将第二个“if”添加到它检查特定打印驱动程序的位置。因此,如果名称中包含 ZEB,驱动程序中包含 HP LASERJET 4,则将驱动程序更改为新的。
标签: shell powershell powershell-3.0 drivers printers