2015-01-30 4 views
1

У меня есть Iis файл журнала, который содержит так:извлечение строки из текстового файла, используя пакетный файл

Line 4780: 2014-12-01 00:58:25 10.211.200.33 - 10.211.55.6 80 POST /localhost/logon.aspx username=michael&CAMUsername=GROUP1&[email protected]&CAMNamespace=zCORP 
Line 4781: 2014-12-01 00:58:25 10.211.200.33 - 10.211.55.6 80 POST /localhost/logon.aspx username=john&CAMUsername=GROUP3&[email protected]&CAMNamespace=zCORP 
Line 4782: 2014-12-01 00:58:27 10.211.200.33 - 10.211.55.6 80 POST /localhost/logon.aspx username=daisy&CAMUsername=GROUP1&[email protected]&CAMNamespace=zCORP 

, и я хочу, чтобы извлечь этот файл. Я получу текстовый вывод следующим образом:

michael GROUP1 
john GROUP3 
daisy GROUP1 

Кто-нибудь может помочь мне сделать это?

+2

Какой код вы уже пробоировали? См. [Какие темы можно задать здесь?] (Http://stackoverflow.com/help/on-topic), [Как задать хороший вопрос?] (Http://stackoverflow.com/help/how -to-ask) и [Как создать минимальный, полный и проверенный пример] (http://stackoverflow.com/help/mcve). – Makyen

ответ

1
@echo off 

setlocal 

set "iis_log=c:\iis.log" 

for /f "useback tokens=2,4 delims==&" %%a in ("%iis_log%") do (
    echo %%a %%b 
) 


endlocal 
+0

спасибо много, но не работает для меня я пытаюсь использовать Powershell скрипт, но он не смог
$ input_path = 'D: \ iis.log' $ output_file = 'D: \ output.log' $ регулярное выражение = ' \ Ъ [A-Za-z0-9 ._% -] + [имя пользователя] + = [A-Za-z0-9 .-] + \ [CAMUsername] + = [A-Za-z0-9._. % -] + & \ b ' select-string -Path $ input_path -Pattern $ regex -AllMatches | % {$ _. Матчи} | % {$ _. Value}> $ output_file –

+0

@WahnanAhmalAsysyakiry - что вы подразумеваете под 'not works'. Есть ли какая-то ошибка? Вывод не тот, который вы хотите? – npocmaka

+0

Я сделал пакетный файл, используя ваш скрипт, но я ничего не получил для вывода. то я попробую создать скрипт powershell '$ input_path =' D: \ iis.log '$ output_file =' D: \ output.log '$ regex =' \ b [A-Za-z0-9 ._% -] + [ имя пользователя] + = [A-Za-z0-9 .-] + \. [CAMUsername] + = [A-Za-z0-9 ._% -] + & \ b 'select-string -Path $ input_path -Pattern $ regex -AllMatches | % {$ _. Матчи} | % {$ _. Value}> $ output_file ' –

Смежные вопросы