上周有个小的需求,依样画葫芦写了一个比较有趣的按需删除打印机的批处理脚本,这里记录一下,里面加了一个菜单选择。前台可见部分效果看似很帅,其实不可见部分执行的是一行行删除项:)
代码如下,重点是 2段 ,wmic printer get Name /value 和 rundll32 printui.dll,PrintUIEntry ,这2小段才是真正起作用的脚本,各菜单顺便做了一个颜色区分:)其他都是装饰了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 |
@echo off ::============================================================================================================================ :: 设置脚本的标题;颜色 [Background][Text] in hex (0 to F) title 按需删除各楼层多余打印机 "wanjie" [2019-07-29] color 2B :MENU ECHO. ECHO.=-=-=-=-=删除各楼层打印机 Powered by Wanjie=-=-=-=-= ECHO. ECHO 1:删除39楼打印机 ECHO 2:删除41楼打印机 ECHO 3:删除42楼打印机 ECHO 4:删除43楼打印机 ECHO 5:查看现有打印机 ECHO 6:退出 ECHO. ECHO. ECHO. echo. 请输入选择楼层的序号后回车: set /p M=Type 1, 2, 3, 4, 5 or 6 then press ENTER: IF %M%==1 GOTO Del39 IF %M%==2 goto Del41 IF %M%==3 goto Del42 IF %M%==4 goto Del43 IF %M%==5 goto ListPrint IF "%M%"=="6"exit PAUSE :Del39 color 08 echo. 执行命令1-删除39楼打印机 set "打印机名39=SHARP MX5608@F39" wmic printer get Name /value|find /i "%打印机名39%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名39%" /dl ) echo; 执行命令1-删除39楼打印机 goto MENU :Del41 color 09 echo 执行命令2-删除41楼打印机 set "打印机名41=SHARP MX-M503N@F41" wmic printer get Name /value|find /i "%打印机名41%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名41%" /dl ) echo; 执行命令2-删除41楼打印机 GOTO MENU :Del42 color 0A echo 执行命令3-删除42楼打印机 set "打印机名4201=SHARP MX-M5608N@F42" wmic printer get Name /value|find /i "%打印机名4201%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名4201%" /dl ) set "打印机名4202=Canon LBP6650@F42茶水间左" wmic printer get Name /value|find /i "%打印机名4202%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名4202%" /dl ) echo;执行命令3-删除42楼打印机 GOTO MENU :Del43 color 0B set "打印机名4301=SHARP MX-M503N@F43" wmic printer get Name /value|find /i "%打印机名4301%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名4301%" /dl ) set "打印机名4302=HP577彩色@4301" wmic printer get Name /value|find /i "%打印机名4302%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名4302%" /dl ) set "打印机名4303=HP577彩色@Room4320" wmic printer get Name /value|find /i "%打印机名4303%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名4303%" /dl ) set "打印机名4304=HP4525彩色@F4338" wmic printer get Name /value|find /i "%打印机名4304%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名4304%" /dl ) set "打印机名4305=Canon LBP6670黑白@Room4320" wmic printer get Name /value|find /i "%打印机名4305%"&&( rundll32 printui.dll,PrintUIEntry /n"%打印机名4305%" /dl ) echo;执行命令4-删除43楼打印机 GOTO MENU :ListPrint color 0C wmic printer get Name /value :cmd6 echo 执行命令6-退出菜单 GOTO MENU |
文章评论