Извлечение вспомогательного номера версии из источника C # с помощью командного файла MSDOS

299
Thomas Matthews

Мне нужно извлечь номер версии из этой строки исходного кода C # с помощью командного файла MSDOS:

public const int major_version = 2; 

Моя попытка:

:: Extract the number-token from the major version string. :: The number-token has a semicolon appended. for /F "tokens=6" %%a in ( str_Major_REV) do set number_token=%%a 

Это приводит к переменной number_tokenкак 2;.

Как я могу удалить ';'?

Справочная информация:
командный файл запускается сервером сборки Jenkins. Я хочу, чтобы командный файл:

  1. Извлеките номер.
  2. Увеличьте число и сохраните как переменную среды / пакетного файла.
  3. Замените исходный номер на увеличенный номер.
  4. Используйте номер в имени папки.
  5. Используйте номер в версии / метке системы управления кодами.

Пункты 4 и 5 - причины, по которым мне нужно удалить точку с запятой из числа.

Среда
Windows Server 2008

0
(1) `delims`, содержащий точку с запятой, прекрасно работает для меня в Vista, которая должна быть такой же, как в 2008 году, и не является разделителем строк (2) Чтобы удалить последний символ`% number_token: ~ 0, -1% ` (3) Удалить точку с запятой где угодно `% number_token:; =%` dave_thompson_085 5 лет назад 1
Гораздо более простой способ - цикл for `для %% A в (% str_Major_Rev%) do @set" number_token = %% A "` Пробел, точка с запятой, запятая, табуляция - все это разделители аргументов. Цикл установит все элементы, но последний останется. LotPings 5 лет назад 0

0 ответов на вопрос

Похожие вопросы