我正在尝试一个批处理文件,它将名为X的更改文本替换为静态文本“English”到路径
Y:\SUT\ISTQB\Board\X\Dashboard\Open
关于X文本的位置,它总是被“Board”和“Dashboard”包围。
在下面的路径中,给定路径下面的当前文本是“X =语言”,我的目标是最终每次都获得“X =英语”!
Y:\SUT\ISTQB\Board\Language\Dashboard\Open
从文件中读取替换字符串。此文件仅包含“英语”
是否可以使用'find'命令通过管道找到解决方案?
提前谢谢
答案 0 :(得分:0)
试试这个:
@echo off &setlocal enabledelayedexpansion
set "string=Y:\SUT\ISTQB\Board\Language\Dashboard\Open"
set "search=%string:*\Board\=%"
for /f "delims=\" %%i in ("%search%") do set "search=%%i"
set "string=!string:%search%=English!"
echo %string%
答案 1 :(得分:0)
@ECHO OFF
SETLOCAL
SET mypath=Y:\SUT\ISTQB\Board\X\Dashboard\Open
FOR /f %%i IN (languagefile.txt) DO SET language=%%i
SET mypath=%mypath:\Dashboard\=*%
SET mypath=%mypath:\Board\=*%
FOR /f "tokens=1,3delims=*" %%i IN ("%mypath%") DO SET mypath=%%i\Board\%language%\Dashboard\%%j
ECHO %mypath%
选择“*”因为它不能出现在路径名中。