gpt4 book ai didi

batch-file - 如何在批处理文件中给出相对路径?

转载 作者:行者123 更新时间:2023-12-04 21:54:55 30 4
gpt4 key购买 nike

我在使用以下批处理脚本时遇到问题,我必须在批处理文件中提供硬编码路径的相对路径。

下面是我的 soapUI cmd 行执行文件,其中 soapui-settings.xml 是包含我所有 soap 设置的文件,而 project.xml 是包含我的测试用例的文件。我在这里有硬编码路径。因为我要 checkin 这个文件,所以如果任何其他人执行这个文件将无法工作,因为他们的机器上不存在该路径。我如何在 Windows 上实现它?有没有一种方法可以在我的批处理文件中使用相对路径来硬编码并运行它?

这是我的示例文件:

cd C:\soapui4.5\soapUI-Pro-4.5.0\bin  
testrunner.bat -tC:\Users\jvihol\soapui-settings.xml C:\Users\jvihol\Documents\April-RTM-soapui-project.xml

任何帮助将不胜感激。谢谢。 :)

最佳答案

这是我用来解决变化路径的技巧。简而言之,

  1. 使所有路径都相对于批处理文件位置,并且
  2. 让批处理文件改变它自己的工作目录。

如果您调用的工具位于路径中或位于由环境变量定义的位置中,这会有所帮助。

像这样:

@echo off

pushd %~dp0

REM Here you are executing in the same directory as the batch file
REM You can make your path relative to here

popd

对于您的项目,您可以使用相同的 %~dp0 作为绝对路径的占位符。

pushd C:\soapui4.5\soapUI-Pro-4.5.0\bin 
testrunner.bat -EDefault -I -t%~dp0soapui-settings.xml %~dp0April-RTM-soapui-project.xml
popd

关于batch-file - 如何在批处理文件中给出相对路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10711769/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com