如何根据指定的文件夹路径获取目录树中每个文件的相对路径?

2023-12-02

我想递归地循环遍历目录并获取具有完整文件路径的文件名以及相对于基本文件夹路径的路径。例如,文件位于D:\foo\bar\a\b\file.txt有相对路径bar\a\b\.

我现在正在使用这段代码,但它不能按预期工作:

FOR /R D:\Download\758_DATA\ %%F IN (*) DO (
    SET B = %%~pF
    Set B=%B:~-6%  ::take substring of the path
    ECHO.%B%
    ECHO %%F 
    ECHO.
)

要获取相对路径,您可以将变量替换与延迟扩展一起使用,如下所示:

setlocal enabledelayedexpansion
for /R . %%f in (*) do (
  set B=%%f
  echo Relative !B:%CD%\=!
)

我在这里使用当前目录(%CD%)作为根目录。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何根据指定的文件夹路径获取目录树中每个文件的相对路径? 的相关文章

随机推荐