Как конкатенировать переменную со строкой или переменной в пакетном файле

Я хотел бы конкатенировать переменную со строкой.

В строке с 7 по 11 я пытаюсь конкатенировать !somevariable! со строкой или с переменной %%P.
Но, похоже, это не работает.

Например, в текущей папке есть файл 0_1_en.pdf.
Скрипт сокращает имя файла до первой цифры.

После этого я хочу создать новую переменную со строкой, например:
"GEN 0", где 0 - это !sPDFName!

Полный код:

 1 SETLOCAL EnableDelayedExpansion
 2 for /f "delims=" %%P in ('dir /b *.pdf') do (
 3    SET "sPDFName=%%~nxP"
 4    echo "!sPDFName:~0,1!"
 5    IF "!sPDFName:~0,1!"=="1" (SET "sPDFName=!sPDFName:~0,1!")
 6    IF "!sPDFName:~0,1!"=="0" (SET "sPDFName=!sPDFName:~0,1!")
 7    SET tempStr=GEN !sPDFName! 
 8    SET myvar=!myvar! %%P
 9
10    echo "%myvar%"
11    echo "%tempStr%"
12    ::echo "!sPDFName!"
13    pause
14    for /f "delims=" %%H in ('dir /b *.html') do (
15    IF "!sPDFName:~-0!"=="!%%H:~0,1!" echo %%H
16    )
17 )
9
задан sjas 22 February 2013 в 13:55
поделиться