Cygwin 是否导入用户变量还是仅导入系统变量?

Cygwin 是否导入用户变量还是仅导入系统变量?

我可以在 cygwin 中看到 windows 系统变量

echo $MYVar

但是,用户变量似乎不起作用。我指的是您在系统属性->高级->环境变量中设置的变量(红色箭头)。Cygwin 只导入系统变量吗?

环境和用户变量

答案1

正常情况下,应该导入两者。

最有可能适用于您的情况的例外是您使用 SSH 客户端作为终端。在这种情况下,Cygwin 不会导入用户变量。您是使用 SSHPuTTY还是另一个类似的 SSH 客户端连接到您自己的工作站?如果您不确定,请尝试运行命令echo $SSH_TTY。如果该命令没有空白输出,则意味着您的 shell 实例是通过 SSH 客户端运行的,并且在这种情况下不会导入用户的本地环境变量。

您有两种选择来解决这个问题...您可以使用本地终端客户端(如 Mintty 或 rxvt)而不是 SSHing,这两者都是 Cygwin 的原生功能,或者您可以编辑 Cygwin 文件profile/etc告诉它在通过 SSH 运行时不要跳过本地变量。此链接显示了如何做到这一点...http://smithii.com/node/44

相关内容