【问题标题】:Batch, UNC Paths, Delim _ remove trailing path批处理、UNC 路径、Delim _ 删除尾随路径
【发布时间】:2013-08-29 00:09:40
【问题描述】:

寻求帮助,我有一个包含 UNC 路径的文本文件,所有路径都有一个特定的分隔符,我可以使用它来查找路径的结束位置(这样我就可以将父 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 多秒。

我们将不胜感激。

【问题讨论】:

    标签: batch-file filepath unc


    【解决方案1】:

    这是一个简单的命令行,可以从命令行工作:

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

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

    【讨论】:

      猜你喜欢
      • 2016-04-13
      • 1970-01-01
      • 2015-09-13
      • 1970-01-01
      • 1970-01-01
      • 2016-07-30
      • 2013-01-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多