Powershell 和 logparser 参数

标签 powershell arguments logparser

我试图从 powershell 运行一些 logparser 命令,但我在正确传递参数时遇到问题,这是我脚本中的 excert;

d:\scripting\smtplogs\logparser\logparser.exe "SELECT TOP 50 Receiver, COUNT() INTO %TMPOutput%\TopReceiversNDRALL.gif FROM %TempDir%\PostAll.log WHERE Sender LIKE '<>' AND Receiver NOT LIKE '% %go-fmtopper%%' GROUP BY Receiver ORDER BY COUNT() DESC"-i:TSV -iSeparator:space -headerRow:OFF -iHeaderFile:"header3.tsv"-lineFilter:"+10."-o:CHART -chartType:ColumnClustered -config:MyScript.js -chartTitle:“所有 %DateGraph% 的 NULL 消息接收器”

我已经阅读了有关封装参数的大量内容,但似乎无法弄清楚如何进行这项工作!

你们可以提供的任何帮助将不胜感激。

谢谢

最佳答案

对于复杂的字符串参数,尝试使用 powershell 传递参数 here-strings这样您就不必担心转义单/双引号

更新 1 :我无法让格式化工作,所以这里是屏幕截图。
alt text

更新2 : 我终于能够格式化代码了。

d:\scripting\smtplogs\logparser\logparser.exe @"
选择前 50 个接收器,计数()
INTO %TMPOutput%\TopReceiversNDRALL.gif
从 %TempDir%\PostAll.log
发件人喜欢的地方 ''
AND Receiver NOT LIKE '%%go-fmtopper%%'
按接收方分组
按计数排序() DESC"
-i:TSV
-iSeparator:空格
-headerRow:OFF
-iHeaderFile:"header3.tsv"
-lineFilter:“+10。”
-o:图表
-chartType:ColumnClustered
-config:MyScript.js
-chartTitle:"%DateGraph% 的 NULL 消息接收器
"@

确保在此处字符串名称之间添加新行 @" "@ .

关于Powershell 和 logparser 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/625067/

相关文章:

powershell - 找不到接受参数 'Files\'的位置参数

go - 使用telegraf input.logparser.grok时用于过滤字符串的自定义模式

azure - 获取 AzureADMSPrivilegedRoleAssignment : The term 'Get-AzureADMSPrivilegedRoleAssignment' is not recognized

powershell - 在线获取计算机的最快方法是什么

python - Pygame 延迟参数

Linux别名问题

c - 在C语言中,当需要将函数或逻辑条件的参数分成多行时,是否需要反斜杠字符(\)?

timestamp - Log Parser2.2 TO_DATE & TO_TIMESTAMP 转换

amazon-web-services - 如何在 Logs Insights 中正确解析 lambda 的空格分隔日志

xml - 如何使用 powershell 从 web 读取 XML 文件