如何在其他变量的集合上将批处理变量添加到文件名?

时间:2017-03-21 10:16:26

标签: windows batch-file cmd

代码优先:

ECHO off
SET home       = c:\Cygwin\home\ian
SET update_log = %home%\update.txt
                 ^^^^^^

有没有办法在%home%变量的初始化中添加update_log变量,如上例所示?

2 个答案:

答案 0 :(得分:6)

  • 等号左侧的空格包含在变量名称中。
  • 等号右侧的空格包含在变量值中。

如果这些地方的空间不是必需的,请不要使用它们

SET "home=c:\Cygwin\home\ian"
SET "update_log=%home%\update.txt"

此外,建议引用赋值以防止特殊字符出现问题,并避免在值的末尾包含空格。

答案 1 :(得分:4)

正如您所拥有的那样,除了批处理对SET语句中的空格敏感。 SET FLAG = N设置一个名为" FLAG Space "的变量。值为" 空格 N"

语法SET "var=value"(其中value可以为空)用于确保任何杂散尾随空格不包含在分配的值中。 set /a可以安全地使用"无报"。

所以 - 删除空格