在Windows批处理脚本中是否有办法将变量值用作字符串分隔符? 我希望用两行不同的数字“剪切”两个字符串。即。
NNNN
我想创建一个仅
的字符串NNNN
我将%% M设置为数字NNNN,但是提取正确位的for循环不起作用,它是字母“M”上的实际切割,而不是%% M的值。如何批量执行此操作?
FOR /F "tokens=1,2 delims**=%%M"** %%X IN ("%%F") DO (
SET /A LINE="%%M %%Y"
答案 0 :(得分:1)
您 无法 在FOR选项中使用FOR变量(%%M
)或延迟扩展(!var1!
)。您 可以 使用正常扩展(%var%
),但如果在定义变量的同一块中使用%var%
,则无效。由于您要使用%%M
,因此定义变量并使用%var%
不会有任何好处。
解决方案是调用过程并将%%M
值传递给CALL参数。您似乎还需要传递%%F
值