如何在 bat 文件中重命名包含 FOR 计数器变量的多个变量

如何在 bat 文件中重命名包含 FOR 计数器变量的多个变量

这是我的示例:

set mail = mymail
for /L  %%x in (001,1,999) do (
    set yourmail = !mail:+%[email protected]
    :: other commands here
)

我想要的结果是这样的:[电子邮件保护]---->[电子邮件保护]

上面的代码块可以正常工作吗?谢谢。

答案1

SET 语句中的空格很重要。您的示例定义了一个名为“mail”的变量,其末尾有一个空格,其值等于“mymail”,但前面有一个空格。

让所有数字都以零为前缀并以长度为三为最简单方法是将所有内容加上 1000,然后使用子字符串操作取最后 3 位数字。

set "mail=mymail"
for /l  %%x in (1001,1,1999) do (
  set "num=%%x"
  set "yourmail=!mail!!num:[email protected]"
  :: other commands here
)

相关内容