Tell me more ×
Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free, no registration required.

I want to split the string (having a path) with \and take last folder name in a variable. Please help.

e.g
mypath=D:\FOLDER1\FOLDER2\FOLDER3\

I want FOLDER3 in a variable.

I tried with the command below which is working if the the last character is not \ :

for %f in (C:\FOLDER1\FOLDER2\FOLDER3) do set myfolder=%~nxf

It is not working if the last character is \

Also it is not working if variable is used like : for %f in (%mypath%) do set myfolder=%~nxf

share|improve this question

2 Answers

up vote 1 down vote accepted
@echo off

set MYDIR=C:\FOLDER1\FOLDER2\FOLDER3\
set MYDIR1=%MYDIR:~0,-1%

for %%f in (%MYDIR1%) do set myfolder=%%~nxf
echo %myfolder%

outputs

FOLDER3
share|improve this answer
 
Thank you very much. This code is working as per my requirement. –  user2013 Jun 24 at 16:32

try:

for %f in (C:\FOLDER1\FOLDER2\FOLDER3\.) do set myfolder=%~nxf

works also:

for %f in (C:\FOLDER1\FOLDER2\FOLDER3.) do set myfolder=%~nxf
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.