如果我有路径
C:\folder1\folder2\folder3\keyfolder\folder4\file.ext
和字符串keyfolder
对应于路径中的一个子文件夹,如何在keyfolder
字符串之前更改路径根,以获得{{1}的结果}?基本上我要做的是将文件的文件夹结构更改为C:\newfolder1\newfolder2\keyfolder\folder4\file.ext
文件夹。
keyfolder
现在我只需将SET OLD=C:\folder1\folder2\folder3\keyfolder\folder4\file.ext
SET KEY=keyfolder
SET NEW=C:\newfolder1\newfolder2
替换为OLD
,直到NEW
。
谢谢!
安德鲁
答案 0 :(得分:1)
只要密钥文件夹名称不包含=
,就可以使用。
@echo off
setlocal enableDelayedExpansion
set "OLD=C:\folder1\folder2\folder3\keyfolder\folder4\file.ext"
set "KEY=keyfolder"
set "NEW=C:\newfolder1\newfolder2"
set "MOD=%NEW%\%KEY%\!OLD:*\%KEY%\=!"
echo MOD=!MOD!