Estrazione del numero di versione minore dall'origine C # utilizzando il file batch MSDOS


0

Devo estrarre il numero di versione da questa linea sorgente C # usando il file batch MSDOS:

public const int major_version = 2;

Il mio tentativo:

::  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

Ciò risulta nella variabile number_tokencome 2;.

Come posso rimuovere il ';'?
{Il parametro ';'viene utilizzato come separatore di riga delims.}

Sfondo:
il file batch è gestito dal server di build Jenkins. Voglio che il file batch:

  1. Estrai il numero.
  2. Incrementa il numero e salva come variabile di ambiente / file batch.
  3. Sostituisci il numero originale con il numero incrementato.
  4. Usa il numero nel nome di una cartella.
  5. Utilizzare il numero in una versione / etichetta del sistema di gestione del codice.

Gli articoli 4 e 5 sono i motivi per cui ho bisogno di rimuovere il punto e virgola dal token numerico.

Ambiente
Windows server 2008


1
(1) delimscontenente punto e virgola funziona bene su Vista, che dovrebbe essere lo stesso del 2008, e non è un "separatore di riga" (2) Rimuovere l'ultimo carattere %number_token:~0,-1%(3) Rimuovere il punto e virgola ovunque%number_token:;=%
dave_thompson_085

Un modo molto più semplice è un ciclo per for %%A in (%str_Major_Rev%) do @set "number_token=%%A"spazio, punto e virgola, virgola, tab sono tutti separatori di argomenti. Il ciclo imposta tutti gli elementi, ma l'ultimo rimarrà.
LotPings
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.