ppm85
28-09-2015, 14:37
Всем привет!
Необходимо в файл out.txt извлечь из файла in.txt строки(с определенными словами) в нужном порядке и убрать лишние пробелы перед словами и между ними поставить знак табуляции.
Пример:
--------[ Суммарная информация ]----------------------------------------------------------------------------------------
Компьютер:
Тип компьютера ACPI компьютер на базе x64 (Mobile)
Операционная система Microsoft Windows 8.1 Professional
Пакет обновления ОС -
Internet Explorer 11.0.9600.16384 (IE 11.0)
DirectX DirectX 11.2
Имя компьютера PP
Имя пользователя 1
Вход в домен PP
Дата / Время 2015-09-28 / 10:04
Системная плата:
Тип ЦП Mobile DualCore Intel Core i5-3337U, 2700 MHz (27 x 100)
Системная плата Hewlett-Packard HP ENVY Sleekbook 6
Чипсет системной платы Intel Panther Point HM77, Intel Ivy Bridge
Системная память 8096 МБ (DDR3-1600 DDR3 SDRAM)
DIMM1: Micron 8KTF51264HZ-1G6E1 4 ГБ DDR3-1600 DDR3 SDRAM (11-11-11-28 @ 800 МГц) (10-10-10-27 @ 761 МГц) (9-9-9-24 @ 685 МГц) (8-8-8-22 @ 609 МГц) (7-7-7-19 @ 533 МГц) (6-6-6-16 @ 457 МГц) (5-5-5-14 @ 380 МГц)
DIMM3: Micron 8KTF51264HZ-1G6E1 4 ГБ DDR3-1600 DDR3 SDRAM (11-11-11-28 @ 800 МГц) (10-10-10-27 @ 761 МГц) (9-9-9-24 @ 685 МГц) (8-8-8-22 @ 609 МГц) (7-7-7-19 @ 533 МГц) (6-6-6-16 @ 457 МГц) (5-5-5-14 @ 380 МГц)
Тип BIOS Insyde (05/16/2014)
Необходимо извлечь строки(имеющие данные слова) в определенном порядке, убрать пробелы перед началом этих строк и поставить знаки табуляции между столбцами:
Системная плата:
Системная память
Тип ЦП
Системная плата
Системная плата:
Системная память[TAB]8096 МБ (DDR3-1600 DDR3 SDRAM)
Тип ЦП[TAB]Mobile DualCore Intel Core i5-3337U, 2700 MHz (27 x 100)
Системная плата[TAB]Hewlett-Packard HP ENVY Sleekbook 6
Как извлекать строки с определенным текстом вроде разобрался:
findstr.exe /i /g:words.txt in.txt >out.txt,где words - список искомых слов в строках. Только так не сортируются строки в том порядке, в котором перечислены искомые слова в words.txt
p.s. Нужно генерировать отчеты из Aida64 с определенными полями, убирая лишние, чего сама Aida64 не позволяет делать ввиду ограниченного функционала. Затем всё это добро закидывается в Excel, где разбивается на столбцы благодаря знакам табуляции.
Необходимо в файл out.txt извлечь из файла in.txt строки(с определенными словами) в нужном порядке и убрать лишние пробелы перед словами и между ними поставить знак табуляции.
Пример:
--------[ Суммарная информация ]----------------------------------------------------------------------------------------
Компьютер:
Тип компьютера ACPI компьютер на базе x64 (Mobile)
Операционная система Microsoft Windows 8.1 Professional
Пакет обновления ОС -
Internet Explorer 11.0.9600.16384 (IE 11.0)
DirectX DirectX 11.2
Имя компьютера PP
Имя пользователя 1
Вход в домен PP
Дата / Время 2015-09-28 / 10:04
Системная плата:
Тип ЦП Mobile DualCore Intel Core i5-3337U, 2700 MHz (27 x 100)
Системная плата Hewlett-Packard HP ENVY Sleekbook 6
Чипсет системной платы Intel Panther Point HM77, Intel Ivy Bridge
Системная память 8096 МБ (DDR3-1600 DDR3 SDRAM)
DIMM1: Micron 8KTF51264HZ-1G6E1 4 ГБ DDR3-1600 DDR3 SDRAM (11-11-11-28 @ 800 МГц) (10-10-10-27 @ 761 МГц) (9-9-9-24 @ 685 МГц) (8-8-8-22 @ 609 МГц) (7-7-7-19 @ 533 МГц) (6-6-6-16 @ 457 МГц) (5-5-5-14 @ 380 МГц)
DIMM3: Micron 8KTF51264HZ-1G6E1 4 ГБ DDR3-1600 DDR3 SDRAM (11-11-11-28 @ 800 МГц) (10-10-10-27 @ 761 МГц) (9-9-9-24 @ 685 МГц) (8-8-8-22 @ 609 МГц) (7-7-7-19 @ 533 МГц) (6-6-6-16 @ 457 МГц) (5-5-5-14 @ 380 МГц)
Тип BIOS Insyde (05/16/2014)
Необходимо извлечь строки(имеющие данные слова) в определенном порядке, убрать пробелы перед началом этих строк и поставить знаки табуляции между столбцами:
Системная плата:
Системная память
Тип ЦП
Системная плата
Системная плата:
Системная память[TAB]8096 МБ (DDR3-1600 DDR3 SDRAM)
Тип ЦП[TAB]Mobile DualCore Intel Core i5-3337U, 2700 MHz (27 x 100)
Системная плата[TAB]Hewlett-Packard HP ENVY Sleekbook 6
Как извлекать строки с определенным текстом вроде разобрался:
findstr.exe /i /g:words.txt in.txt >out.txt,где words - список искомых слов в строках. Только так не сортируются строки в том порядке, в котором перечислены искомые слова в words.txt
p.s. Нужно генерировать отчеты из Aida64 с определенными полями, убирая лишние, чего сама Aida64 не позволяет делать ввиду ограниченного функционала. Затем всё это добро закидывается в Excel, где разбивается на столбцы благодаря знакам табуляции.