For loop 在批处理中,如何使用for循环捕获迭代文件夹的名称?

For loop 在批处理中,如何使用for循环捕获迭代文件夹的名称?,for-loop,batch-file,For Loop,Batch File,从批处理脚本中,使用for循环,我只想捕获迭代文件夹的名称,如下例所示: SET _source=C:\Users\userId FOR /D %%i in (%_source%\*) DO ( ECHO nameOfIteratedFolder=... ) 例如,如果迭代文件夹是C:\Users\userId\Desktop,我只想在变量nameOfIteratedFolder中捕获桌面名称 如果我使用%%I参数,我将获得桌面文件夹的所有路径:C:\U

从批处理脚本中,使用for循环,我只想捕获迭代文件夹的名称,如下例所示:

    SET _source=C:\Users\userId

    FOR /D %%i in (%_source%\*) DO (
       ECHO nameOfIteratedFolder=...
    )
例如,如果迭代文件夹是
C:\Users\userId\Desktop
,我只想在变量
nameOfIteratedFolder
中捕获桌面名称

如果我使用
%%I
参数,我将获得桌面文件夹的所有路径:
C:\Users\userId\Desktop


谢谢大家

键入
以获取/?
。该信息也会在
call/?
中重复。此外,如果
%%i
输出到
DO
,则该信息必须存在。因此,如果存在
,则无需对其执行
!我希望您已经打开了,执行了
for/?
,并仔细阅读了从第一页顶部到最后一页底部的输出帮助,以了解(“%UserProfile%\*”)中的
for/D%%I。do echo当前文件夹是:“%%~nxI”
。另请参见预定义列表。将结果与/F“eol=|delims=“%%I in('dir”%UserProfile%“/AD/B 2^>nul')do echo当前文件夹的结果进行比较:“%%I”
。您很可能会看到/D忽略隐藏文件夹的不同之处。@Mark我已经查阅了/?
,但显然我不太了解修饰符的用法@compoi更正了代码:最初foor循环是在任意列表上执行的@外交部你的评论回答了我的问题。非常感谢。感谢大家的参与。键入
获取/?
。该信息也会在
call/?
中重复。此外,如果
%%i
输出到
DO
,则该信息必须存在。因此,如果存在
,则无需对其执行
!我希望您已经打开了,执行了
for/?
,并仔细阅读了从第一页顶部到最后一页底部的输出帮助,以了解(“%UserProfile%\*”)中的
for/D%%I。do echo当前文件夹是:“%%~nxI”
。另请参见预定义列表。将结果与/F“eol=|delims=“%%I in('dir”%UserProfile%“/AD/B 2^>nul')do echo当前文件夹的结果进行比较:“%%I”
。您很可能会看到/D忽略隐藏文件夹的不同之处。@Mark我已经查阅了/?
,但显然我不太了解修饰符的用法@compoi更正了代码:最初foor循环是在任意列表上执行的@外交部你的评论回答了我的问题。非常感谢。感谢大家的参与。