批处理文件退一步

时间:2017-09-22 07:43:54

标签: batch-file cmd

我正在写一个批处理文件,我想将一些文件从根路径移到 cd .. root。

我使用%~dp0来查找根路径。

从根路径返回一步的最佳方法是什么?

非常感谢

2 个答案:

答案 0 :(得分:1)

%~dp0指向当前批处理文件的父目录(包括尾随\),%~dp0..因此指向批处理文件的祖父目录。

您可以使用for loop及其变量引用的~f modifier%%I)来解析路径:

for %%I in ("%~dp0..") do echo/%%~fI

答案 1 :(得分:0)

你几乎就在那里,只需使用%~dp0..

或者如果您希望它完全解析,请使用此技巧

@echo off
call :resolve "%~dp0.."
goto :eof

:resolve
echo %~f1
goto :eof

有关解释,请参阅此SO回答https://stackoverflow.com/a/15568171/30447