来自Emacs的外部进程调用期间的临时修改环境

时间:2011-06-26 12:23:34

标签: shell emacs environment-variables temporary convenience-methods

在使用{{1> 临时修改环境变量时,是否存在方便的功能with-... - )方式}或shell-comand

提前致谢, 每

2 个答案:

答案 0 :(得分:7)

进程环境是一个 要继承的子进程的重写环境变量列表。

(let ((process-environment (cons "FOO=BAR" process-environment)))
  (shell-command-to-string "echo $FOO"))

- >

BAR

答案 1 :(得分:2)

server-with-environment看起来很有希望。

  

server-with-environment是`server.el'中的Lisp宏。

     

(服务器环境ENV VARS& rest BODY)

     

使用设置为ENV中的环境变量VARS来评估BODY。   然后将环境变量恢复为先前的值。

     

VARS应该是一个字符串列表。   ENV应该与`process-environment'格式相同。