Je veux diviser la chaîne (ayant un chemin) avec \
et prendre le dernier nom de dossier dans une variable. Veuillez aider.
par exemple
mypath = D:\FOLDER1\FOLDER2\FOLDER3 \
Je veux FOLDER3 dans une variable.
J'ai essayé avec la commande ci-dessous qui fonctionne si le dernier caractère n'est pas \
:
for %f in (C:\FOLDER1\FOLDER2\FOLDER3) do set myfolder=%~nxf
Cela ne fonctionne pas si le dernier caractère est \
De plus, cela ne fonctionne pas si la variable est utilisée comme: pour% f dans (% mypath%), définissez mon dossier =% ~ nxf
@echo off
set MYDIR=C:\FOLDER1\FOLDER2\FOLDER3\
set MYDIR1=%MYDIR:~0,-1%
for %%f in (%MYDIR1%) do set myfolder=%%~nxf
echo %myfolder%
les sorties
FOLDER3
essayer:
for %f in (C:\FOLDER1\FOLDER2\FOLDER3\.) do set myfolder=%~nxf
fonctionne aussi:
for %f in (C:\FOLDER1\FOLDER2\FOLDER3.) do set myfolder=%~nxf
Lorsque votre dossier actuel contient des espaces, essayez ceci:
@echo off
for %%f in ("%CD%") do set LastPartOfFolder=%%~nxf
echo %LastPartOfFolder%