alek2012, они и так с новой строки начинаются, проблема в том, что grep подает свой вывод с переводом строки в unix-формате (LF), а вы я так понимаю, просматриваете текстовый файл в редакторе, который понимает только windows-like переводы строки (CR+LF)
Вариант решения c for:
Код:
@Echo Off
For /F "delims=" %%A In ('grep -Eo "\[[^\[]*\]" "test.txt"') Do (Echo %%A>>"out.txt")
Pause