博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PowerShell监控Windows打印服务器
阅读量:6633 次
发布时间:2019-06-25

本文共 1176 字,大约阅读时间需要 3 分钟。

转自:http://sodaxu.blog.51cto.com/8850288/1417385

 

#获取日志,事件ID 307即我们需要提取的事件。 path后的路径要与operational日志属性里的日志路径一致$log = Get-WinEvent -Path "F:\pringlog\Microsoft-Windows-PrintService%4Operational.evtx" | where-object {
$_.id -eq "307"} #输出csv文件位置,用当前的日期运行。$Path="F:\pringlog\$(Get-date -UFormat "%Y-%m-%d").csv"foreach ($slog in $log){ #取xml操作 $xmltemp= $slog.ToXml() $xmldata = [xml]$xmltemp #取xml对应的node里的值 $documentsName = $xmldata.Event.UserData.DocumentPrinted.Param2 $userName = $xmldata.Event.UserData.DocumentPrinted.Param3 $paGes = $xmldata.Event.UserData.DocumentPrinted.Param8 $printerName = $xmldata.Event.UserData.DocumentPrinted.Param5 #取日志时间 $printTime = $slog.TimeCreated #自定义PSObject属性 $hash = @{ [string]"打印文件名"=$documentsName; [string]"用户名"=$userName; [string]"打印时间"=$printTime.ToString(); [string]"打印机名称"=$printerName; [string]"打印页数"=$paGes} $logObj = New-Object PSObject -Property $hash #输出为CSV,逐条添加模式,不带TypeInformation,所以如果要重新输出,还得删掉以前的文件。 Export-Csv -InputObject $logObj -Path $Path -Append -Encoding UTF8 -NoTypeInformation}

 

转载于:https://www.cnblogs.com/IvanChen/p/4494457.html

你可能感兴趣的文章
优化IIS7.5支持10万个同时请求的配置方法_win服务器
查看>>
mysql中自连接查询的妙用:推荐人统计
查看>>
c语言代码缩进和空白
查看>>
我学安卓——运行时hook之onClickListener
查看>>
ios面试题1
查看>>
Snort***检测系统安装配置
查看>>
Linux优化之IO子系统监控与调优
查看>>
Install Toad for Oracle 10.6 on Winows 7 X64
查看>>
发福利喽!学Spark课程送Spark技术峰会的门票........
查看>>
Ubuntu忘记登录密码的解决办法
查看>>
Oracle数据库培训-PLSQL编程
查看>>
突破虚拟化极限,自由畅翔云端
查看>>
F5和VMware-共同交付软件定义的数据中心
查看>>
Java并发编程的艺术
查看>>
批量分发ssh公钥证书
查看>>
iOS encrypt Md5, Sha1,Base64
查看>>
git 常用命令
查看>>
Android系统启动流程(四)Launcher启动过程与系统启动流程
查看>>
jquery增,删,改一个html标签的class名字
查看>>
缓存技术
查看>>