skrypt wsadowy do drukowania poprzednich i następnych wierszy szukanego ciągu w pliku tekstowym

Mam skrypt wsadowy, który wydrukuje całą linię szukanego ciągu w pliku tekstowym.

for %%i in (log.txt) do (
FINDSTR /G:pattern.txt %%i >> output.txt
)

Przykład: pattern.txt zawiera szukany ciągERROR a poniżej jest przykładowy tekst w log.txt

2013-06-30 02:17:55,562 INFO   Service started
2013-06-30 02:17:55,578 INFO   Sending mail...
2013-06-30 02:17:55,578 DEBUG  Element value: 1
2013-06-30 02:17:55,578 ERROR  error occurred and message is ""
2013-06-30 02:17:55,578 DEBUG  bit version: 8
2013-06-30 02:17:55,578 INFO   Service stopped

Powyższy skrypt wsadowy wydrukuje każdy wiersz tekstu za każdym razem, gdy znajdzie ciągERROR w log.txt Więc output.txt będzie wyglądać tak, jak poniżej

2013-06-30 02:17:55,578 ERROR  error occurred and message is ""

Jak mogę wydrukować tylko poprzednie i następne wiersze szukanego ciągu, jak poniżej:

2013-06-30 02:17:55,578 DEBUG  Element value: 1
2013-06-30 02:17:55,578 DEBUG  bit version: 8

Z góry dziękuję.

questionAnswers(3)

yourAnswerToTheQuestion