是否有可能拥有一个仅保留先前run
执行状态的上下文管理器。在代码中:
编辑:不是一个可行的解决方案,这是我所期望的
with sudo('. myapp'): #this runs a few things and sets many env variables
run('echo $ENV1') # $ENV1 isn't set because the sudo command ran independently
我正在尝试运行多个命令,但想在每个命令之间保持状态?
我尝试使用前缀上下文管理器,但它不适用于 shell_env 上下文管理器:运行此代码时
with shell_env(ENV1="TEST"):
with prefix(". myapp"):
run("echo $ENV2")
我希望我ENV
被设置然后运行我应该设置env2
但前缀在 shell_env 之前运行的应用程序?