Como atualmente escrito, seu arquivo de lote sempre resulta em
echo.>"C:\Users\Kristian\Documents\Kristian\HEI\templogfile_1.txt"
como %variableB%
continua a ser 1
.
No entanto, o próximo trecho de código comentado pode ajudar na extração do valor desejado (citado em sua pergunta original):
What comes after "
templogfile_
" in "C:\Users\Kristian\Documents\Kristian\HEI\templogfile_*
"
for /f "delims=" %%G in ('
dir /b /O:D "C:\Users\Kristian\Documents\Kristian\HEI\templogfile_*"
') do (
set "_rawNumber=%%~nG" gets last file name e.g. templogfile_357
)
rem there is identical output from next two ECHO commands:
rem any text remaining in %_rawNumber% variable if 'templogfile_' substring is removed
ECHO(%_rawNumber:templogfile_=%
rem any text following 12th character in %_rawNumber% variable
ECHO(%_rawNumber:~12%
Recursos (leitura obrigatória, incompleta):
- (referência de comando) Um índice A-Z da linha de comando do Windows CMD
- (particularidades adicionais) Sintaxe da linha de comando do shell do Windows CMD
- (
%~G
,%~nG
etc. página especial) Argumentos da linha de comando (parâmetros) - (
%_rawNumber:~12%
) Extrair parte de uma variável (substring) - (
%_rawNumber:templogfile_=%
) Editar / substituir variável