【问题标题】:Running a command with specific environment settings - one-liner运行具有特定环境设置的命令 - 单行
【发布时间】:2010-11-24 19:50:59
【问题描述】:

要运行具有自定义环境设置的程序,我们在 Linux 上执行此操作

$ MYVAR=23 ./foo.py

在 Windows 上,我知道的唯一方法是:

C:\> set MYVAR=23
C:\> .\foo.py
C:\> REM unset MYVAR here (but how?)

但是这样就不能单线了吗?

【问题讨论】:

  • 也许这个问题更适合 ServerFault 的人?

标签: windows command-line environment-variables


【解决方案1】:
set MYVAR=

将取消设置。

您还可以使用SETLOCALENDLOCAL 来限制变量的范围。从命令行运行 help SETLOCALhelp GETLOCAL 以获取更多信息。

还可以查看Cmd reference

【讨论】:

    【解决方案2】:
    set foo=bar&.\foo.py&set foo=
    

    需要注意的是,批处理文件一次被解析一行,所以像这样的一行是有问题的(在这些情况下,setlocal ENABLEDELAYEDEXPANSION 可以提供帮助)

    【讨论】:

    • & 表示下一个命令将在命令成功(而不是失败)时运行?
    • & 总是运行下一个命令,&& 只是成功和 ||失败
    猜你喜欢
    • 1970-01-01
    • 2013-08-08
    • 2012-10-17
    • 2021-12-25
    • 1970-01-01
    • 2011-08-20
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    相关资源
    最近更新 更多