因此,我尝试从另一台机器远程删除一些手动添加的打印机。问题是,我不想删除所有打印机,只删除名称中有“HJK”或“LSG”的打印机。
所以,为了得到名单,我做了:
Invoke-Command AaronsComputer -ScriptBlock {get-printer | select name -expandproperty name}
要删除打印机,我会执行以下操作:
Invoke-Command AaronsComputer -ScriptBlock {Remove-Printer -Name "Full Printer Name Here"}
我知道我可以将get-printer的结果导出为CSV以更好地使用它,但我宁愿不这样做,并让这一切都发生在Powershell中。
我认为这几行沿着东西会起作用,但我不认为PowerShell智能地将每行视为变量。
$PrinterResults = Invoke-Command $Computer -ScriptBlock {get-printer | select name -expandproperty name}
foreach $PrinterResults
if ($PrinterResults -contains "HJK") {
Invoke-Command $Computer -ScriptBlock {Remove-Printer -Name "$PrinterResults"}
}
if ($PrinterResults -contains "LSG") {
Invoke-Command $Computer -ScriptBlock {Remove-Printer -Name "$PrinterResults"}
}
最终目标是我可以一次删除所有符合条件的打印机。
1条答案
按热度按时间o2rvlv0m1#
设法做到这一点,在最后与以下: