script por lotes para imprimir las líneas anteriores y siguientes de la cadena de búsqueda en un archivo de texto
Tengo un script por lotes que imprimirá la línea completa de la cadena de búsqueda en un archivo de texto.
for %%i in (log.txt) do (
FINDSTR /G:pattern.txt %%i >> output.txt
)
Ejemplo: pattern.txt contiene la cadena de búsquedaERROR
y debajo está el texto de muestra en 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
El script por lotes anterior imprimirá cada línea de texto cada vez que encuentre la cadenaERROR
en log.txt Entonces, el output.txt se verá con líneas como las siguientes
2013-06-30 02:17:55,578 ERROR error occurred and message is ""
¿Cómo puedo imprimir solo las líneas anteriores y siguientes de la cadena de búsqueda como a continuación:
2013-06-30 02:17:55,578 DEBUG Element value: 1
2013-06-30 02:17:55,578 DEBUG bit version: 8
Gracias por adelantado.