如何设置TERM环境变量

时间:2013-03-09 04:17:00

标签: unix emacs environment-variables term

我正在编写一个小shell,我需要从中启动emacs。但是,当我调用emacs命令时,我收到错误“请设置TERM环境变量,请参阅tset”。现在,我尝试使用如下的tset

tset xterm

我也尝试在我的代码中使用setenv()系统调用,如下所示

setenv('TERM','xterm',0);

然而,两次错误仍然会再次出现。谷歌也不是很有帮助。有人可以解决这个问题吗?谢谢。

1 个答案:

答案 0 :(得分:1)

根据我们在评论中的讨论以及这是C的事实,这一行是错误的:

setenv('TERM','xterm',0);

您使用的是单引号,用于字符文字而不是字符串。许多编译器,如gcc,实际上允许您包含多个字符作为扩展名。你应该使用字符串/双引号:

setenv("TERM","xterm",0);

除非您使用明确包含环境的fork()变体之一(例如exec()),否则在您exec()execve()时会忽略流程的环境变量。< / p>