批处理文件提取所有内容直到'\'的最后一次出现

时间:2011-12-05 22:54:18

标签: windows batch-file

我有一些相对路径,例如\foo\bar\baz.txt,我需要提取\foo\bar但我不能使用%~p1,因为这给了我一个相对于当前目录的路径,我不知道想。有这么简单的方法吗?

1 个答案:

答案 0 :(得分:0)

唯一与您的路径相关的是它与当前驱动器相关。您可以使用%~dp1来获取完整的绝对路径。另一种选择是使用FOR变量扩展而不是参数扩展。

for %%F in ("\foo\bar\baz.txt") do set myPath="%%~dpF"

解决方案应始终为任何路径提供完整的绝对路径,包括相对路径。