根据“x”之后和mypath变量中的“打开文件”之前的文本,我想调用传递此文本作为参数的函数,以便将其替换为'foo'。要做到这一点,我已经写了嵌套到批处理变量中的批处理变量
@echo off
SET mypath=Y:\SUT\ISTQB\Board Airport\X\Dashboard\Open file
if /i %1=="Dashboard" goto label %1
if /i %1=="Dboard" goto label %1
:label
SET mypath=%mypath:\%1\=foo%
ECHO %mypath%
我注意到,在这个脚本结束呼应mypath中输出
Y:\SUT\ISTQB\Board Airport\X\Dashboard\Open file instead of
Y:\SUT\ISTQB\Board Airport\X\foo\Open file
我认为这个问题是有关参数%1“SET mypath中=%mypath中内:\%1 \ = foo%',但我不明白为什么。
事实上,我绝对需要使用参数%1,因为当前“仪表板”中的文本变为mypath变量不是静态文本。它可以是“Dboard”,或任何东西
有人可以解释我吗?预先感谢您
执行myfile.bat“Dboard”我的输出是Y:\ SUT \ ISTQB \ Board Airport \ X \ Dashboard \打开文件,而不是我为你; – new
和它的正常be.YOu想要用FOO替换DASHBOARD,但是如果你通过DBOARD,则什么都不会被替换。 – npocmaka
是的,如果你想替换“Dboard”,你必须搜索“Dboard”,如果搜索失败,什么都不能替代。 – Endoro