У меня есть программа, которая выводит данные непрерывно 3 или 4 строки за раз (иногда 4-я строка - это обновление состояния). Я хочу сохранить только второй (начинается с «cmd:») и 3-й строки (начинается с «prc:»), а затем избавиться от этих первых 5 символов для окончательного вывода. Есть ли способ сделать это с помощью командной строки Windows? У меня до сих пор:строки трубопровода из выходных программ
program.exe -flags | FINDSTR /c:"cmd" /c:"prc" | WHAT???? > "output.txt"
Даже еще лучше, есть способ заменить символы новой строки (в дополнение к удалению первые 5 символов) с запятой, так что выход есть две пары значений (CMD и prc) в одной строке?
Спасибо за любую помощь.
ТАКЖЕ: есть ли способ разделить выход на лету между несколькими файлами, чтобы ни один файл не превышал 10 МБ или 10000 строк и т. Д.? например, когда «output01.txt» попадает в 10K строк, начните отправку вывода в «output02.txt» и так далее?
все это в тысячу раз проще с помощью набора инструментов Unix/Linux. Есть несколько рабочих атак, которые вы можете установить в Windows, или достаточно просто запустить виртуальную машину в Windows, которая дает вам действительно полную среду Linux. Cygwin, mingw - 2 зрелые работы. Я не могу дать вам имя для установки VM Linux. Я уверен, что другие могут. удачи. – shellter