使用Log Parser时,它实际上支持将参数传递给sql文件。在我的情况下,我想设置输出文件名以包含yyyyMMdd格式的今天的日期。这是我的sql文件内容:
SELECT RecordNumber, TimeGenerated
,EventId,EventType,EventTypeName,EventCategory,EventCategoryName
,SourceName,REPLACE_STR(Strings,'\u000d\u000a','.') AS Strings
,ComputerName,SID,REPLACE_STR(Message,',','.') AS Message,Data
INTO C:\EventLog\Security_%date%.csv
FROM Security
WHERE TimeGenerated > SYSTEM_DATE()
我从Windows power shell调用日志解析器,如:
.\LogParser.exe -o:CSV file:sqlfile.sql?date=.....
我可以在“date =”之后放置什么,以便我可以以yyyyMMdd的格式获取当前日期?
答案 0 :(得分:1)
LogParser将自动使用SELECT语句中的值来替换INTO语句中的通配符(*)。因此,尝试将其添加为SELECT语句中的第一个字段
INTO C:\EventLog\Security_*.csv
并将您的INTO语句更改为
<?php
/**
* Implements hook_init().
*/
function MY_MODULE_init() {
drupal_add_http_header('Cache-Control', 'no-cache, no-store, max-age=0, must-revalidate, post-check=0, pre-check=0');
}
?>
你不再需要在logparser.exe命令上使用?date = .....。
/科林