Ответ 1
@echo off
set MYDIR=C:\FOLDER1\FOLDER2\FOLDER3\
set MYDIR1=%MYDIR:~0,-1%
for %%f in (%MYDIR1%) do set myfolder=%%~nxf
echo %myfolder%
выходы
FOLDER3
Я хочу разбить строку (имеющую путь) с помощью \
и взять последнее имя папки в переменной. Пожалуйста, помогите.
например
mypath = D:\FOLDER1\folder2\folder3\
Я хочу FOLDER3 в переменной.
Я попытался выполнить команду ниже, которая работает, если последний символ не \
:
for %f in (C:\FOLDER1\FOLDER2\FOLDER3) do set myfolder=%~nxf
Он не работает, если последний символ \
Также он не работает, если используется переменная типа: для% f in (% mypath%) установить myfolder =% ~ nxf
@echo off
set MYDIR=C:\FOLDER1\FOLDER2\FOLDER3\
set MYDIR1=%MYDIR:~0,-1%
for %%f in (%MYDIR1%) do set myfolder=%%~nxf
echo %myfolder%
выходы
FOLDER3
попробовать:
for %f in (C:\FOLDER1\FOLDER2\FOLDER3\.) do set myfolder=%~nxf
работает также:
for %f in (C:\FOLDER1\FOLDER2\FOLDER3.) do set myfolder=%~nxf