批处理,UNC路径,Delim _删除尾随路径

时间:2013-08-28 15:45:08

标签: batch-file filepath unc

寻找一点帮助,我有一个包含UNC路径的文本文件,所有路径都有一个特定的delim我可以用来查找路径应该结束的位置(所以我可以将父UNC路径作为驱动器挂载)

示例文本文件

\\myunc.myunc.com\parent1\parent2\location_1\blah\blah\
\\myunc.myunc2.com\parent1\location_1\blah\blah\
\\myunc.myunc2.com\parent1\parent2\parent3\parent4\location_1\blah\

理论上我需要它来解析这个文本文件,并将路径输出为

\\myunc.myunc.com\parent1\parent2\
\\myunc.myunc2.com\parent1\
\\myunc.myunc2.com\parent1\parent2\parent3\parent4\

我需要找到_并删除前面的路径字符串,直到\

-

@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
ECHO GRABBING UNC PATHS
ECHO.
FOR /F "tokens=1 delims=_" %%b in (pathdumpunc.txt) do (
    SET UNCPATH=%%b
    ECHO !UNCPATH!
        for %%a in (!UNCPATH!) do set LastFolder=%%~nxa
        ECHO !LastFolder!
PAUSE
)

我已经确定了最后一个文件夹路径名称,但就目前为止,似乎“LastFolder = %% ~nxa”行需要永远运行,如10秒以上。

任何帮助都会得到赞赏。

1 个答案:

答案 0 :(得分:3)

这是一个简单的衬管,可以在命令行中使用:

for /f "delims=_" %F in (pathdumpunc.txt) do @echo %~dpF

将百分比加倍以在批处理文件中使用它