[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] 批处理查询打印机使用记录为什么执行后没有效果呢?

  1. @echo off
  2. setlocal
  3. set printerName="打印机名称"
  4. :loop
  5. rem 获取最早的打印记录
  6. for /f "skip=2 tokens=*" %%a in ('wmic PRINTER where "Name=%printerName%" get JobId^,Document^,Status^,TimeSubmitted /format:csv') do (
  7.   set "line=%%a"
  8.   goto :next
  9. )
  10. goto :done
  11. :next
  12. rem 打印记录所在行有多余逗号,需要去除
  13. set "line=%line:~0,-1%"
  14. set "line=%line:~0,-1%"
  15. set "line=%line:~0,-1%"
  16. rem 解析 CSV 格式的打印记录,并输出
  17. for /f "tokens=1-4 delims=," %%a in ("%line%") do (
  18.   echo 打印时间: %%d
  19.   echo 打印文档: %%b
  20.   echo 打印状态: %%c
  21.   echo.
  22. )
  23. goto :loop
  24. :done
  25. pause
  26. endlocal
复制代码
网上看到这段代码,为什么执行后没有效果呢?

回复 2# Batcher

感谢领导帮助,在打开的CMD窗口中输入命令后的全部显示内容如下:

C:\Windows\system32>wmic Printer get Name,Status /value


Name=Phantom Print to Evernote
Status=Unknown


Name=Microsoft XPS Document Writer
Status=Unknown


Name=Foxit Phantom Printer
Status=Unknown


Name=Fax
Status=Unknown


Name=Canon MG3080 series
Status=Unknown




C:\Windows\system32>wmic Printer where "Name=Canon MG3080 series" get JobId,Docu
ment,Status,TimeSubmitted /format:csv
Node - PONFD591604FL
ERROR:
Description = Invalid query

Node,

C:\Windows\system32>

TOP

本帖最后由 wh123wh123 于 2024-4-25 00:53 编辑

回复 2# Batcher

批处理能不能记录查询打印机的使用情况?或者用vbs自动记录打印日志(打印时间、打印的文件名称、页数等信息),就像vbs记录电脑开关机运行情况一样效果,能不能实现?

TOP

本帖最后由 wh123wh123 于 2024-4-25 08:35 编辑

回复 5# Batcher

批处理BAT记录开关机,好多年前用过,忘记在哪个论坛找到的了,就是把批处理放到开机里,只要开关机自动记录开关机时间输出到指定路径的文本文件里。

TOP

回复 7# czjt1234

是的,用BAT能不能按这个思路实现打印机的使用记录?包括打印日期时间、文件名称、页数。

TOP

返回列表