我的批处理脚本位于以下目录中:
\\test\public\windows\scripts\32\test.bat
我正在尝试获取此文件夹的路径:\test\public\windows\logs
我尝试过使用 %~dp0
来获取脚本的路径,并且我尝试过:
SET REL_PATH=..\..\
问题是它没有向我显示这个文件夹。
最佳答案
SET REL_PATH=..\..\
path指向你指定的路径,要验证它是从哪里来的,请制作一个
echo %CD%
它会告诉您系统正在查看的路径。
然后设置从 %CD%
到脚本路径的相对路径。
如果您在执行此操作后遇到困难,请发表评论。
例如:
echo %CD%
给出C:\windows\system32
并且您想要执行位于c:\test\public\windows\scripts\32\test.bat
的批处理文件
你需要做
SET REL_PATH=%CD%\..\..\test\public\windows\scripts\32\
要移动到此路径,请执行以下操作:
cd /d %REL_PATH%
要解决 UNC 路径,请执行 PUSHD 和 POPD:
@echo off
pushd \\test\public\windows\scripts\32\
REM do your work
call test.bat
popd
引用:How to run batch file from network share without "UNC path are not supported" message?
关于windows - 批量 - 解析相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28147753/