代码之家  ›  专栏  ›  技术社区  ›  Adel M.

如何在Windows命令行中将变量求值委托给子CMD进程?

  •  0
  • Adel M.  · 技术社区  · 1 年前

    我正试图在Windows命令行中将变量求值委托给子CMD进程。请考虑以下几点:

    set foo=bar
    cmd /c "set foo=rod & echo %foo%"
    

    它打印 酒吧 而不是 因为表达 %foo% 在语句本身之前进行评估。我想反过来,这样它就会打印出来 .怎么做?

    1 回复  |  直到 1 年前
        1
  •  1
  •   jeb    1 年前

    启用延迟扩展并使用它

    set foo=bar
    cmd /V:on /c "set foo=rod & echo !foo!"