从完整路径或相对路径获取文件名,知道该文件名不是批处理的参数

时间:2013-04-17 23:06:55

标签: batch-file filenames

当一个文件以及相对路径或完整路径......作为批处理的参数给出时,我知道如何扩展%1以获取文件名

    %~n1 

这很容易!

尽管如此,我想从其相对/完整路径获取文件名,该路径在批处理中正确处理。

请查看我的代码。我想扩展%% x(在我的情况下是一个相对路径),只考虑其文件名。请问您有什么想法吗?感谢

 @echo off
 SETLOCAL EnableDelayedExpansion
 set currDir=%CD%
 for /f "tokens=*" %%x in (Lists.out) do (
 echo %%x
 set filetxt=%%x)

这是一个示例“Lists.out”文件,其中包含一些不同的文件内置相对路径。 组成

   Temp\my file1_X
   Temp\my file2_X
   ...............

1 个答案:

答案 0 :(得分:0)

...
 echo %%~nx
 set filetxt=%%~nx)

应该可以解决你的问题。

或如果您也想要扩展程序,请使用~nxx