Команда для получения информации о столбце - PullRequest
0 голосов
/ 15 декабря 2011

У меня есть команда incmd version, которая выдает выходные данные

All Rights Reserved.
This Software is protected by U.S. Patent Numbers 5,794,246; 6,014,670; 6,016,50
1; 6,029,178; 6,032,158; 6,035,307; 6,044,374; 6,092,086; 6,208,990; 6,339,775;
6,640,226; 6,789,096; 6,820,077; 6,823,373; 6,850,947; 6,895,471; 7,117,215; 7,1
62,643; 7,254,590; 7,281,001; 7,421,458; 7,496,588; 7,523,121; 7,584,422; 7,720,
842; 7,721,270; and 7,774,791, international Patents and other Patents Pending.

Version: 9.1.0 HotFix2
Build: 1668 - 2011-Sep-02
Command ran successfully.

Я хочу извлечь 9.1.0 из нее.до сих пор используя findstr "Version" я только получаю Version: 9.1.0 HotFix2 Есть ли способ извлечь информацию из столбца?

Примечание : без использования каких-либо сторонних инструментов ... (anytool, который доступенпо умолчанию в windows нормально)

1 Ответ

1 голос
/ 15 декабря 2011

Вы можете использовать for для токенизации этого вывода:

for /f "tokens=2, delims= " %v in ('incmd version ^| findstr Version') do @set Version=%v
echo %Version%

См. help for для подробного объяснения команды и ее параметров.

Обратите внимание, что если вы используете это в пакетном файле (который я предположил сначала, но, видимо, не так), вам придется удвоить знаки процента в переменной for:

for /f "tokens=2, delims= " %%v in ('incmd version ^| findstr Version') do @set Version=%%v
echo %Version%
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...