Windows环境variables嵌套限制?

Windows环境variables嵌套限制?,第1张

概述Windows环境variables嵌套限制?

那么,在@R_301_5087@中嵌套环境variables的能力有多大? 我做了很多的开发工作,我试图设置我的开发环境variables,其中很多是互相嵌套的。

GLEW=%THIRD_PARTY_ROOT%GLEW GLEW_1_5_5=%GLEW%glew-1.5.5 GLEW_BIN_PATH=%GLEW_ROOT%bin GLEW_INCLUDE_PATH=%GLEW_ROOT%include GLEW_liB_PATH=%GLEW_ROOT%lib GLEW_ROOT=%GLEW_1_5_5% OSG=%THIRD_PARTY_ROOT%OpenSceneGraph OSG_2_8_3=%OSG%OpenSceneGraph-2.8.3 OSG_BIN_PATH=%OSG_ROOT%bin OSG_INCLUDE_PATH=%OSG_ROOT%include OSG_liB_PATH=%OSG_ROOT%lib OSG_ROOT=%OSG_2_8_3% THIRD_PARTY_ROOT=C:devthird-party

但是我有一段时间让他们真正地扩展。 有一阵子,当我看着set的输出时,我只是看到它们按顺序展开,所以依赖于foo_ROOT的任何东西都没有被正确地展开。 我尝试启用延迟扩展,并没有帮助,但重新启动似乎…所以也许延迟扩展需要重新启动..

无论哪种方式,我有我的PATHvariables中的GLEW_BIN_PATH和OSG_BIN_PATH,他们拒绝扩大。 这真是令人沮丧,因为dll的居住在那里,当然,我可以evvvverything其他扩展…任何想法?

编辑:我有他们在PATHvariables为:

嵌套循环variables批处理

我可以在UNIX shell中执行嵌套或链接的命令吗?

嵌套循环与嵌套循环窗口批处理中使用的variables

嵌套批循环

shell脚本中的三重嵌套引用

[everything else....];%GLEW_BIN_PATH%;%OSG_BIN_PATH%

所以我没有看到明显的原因使他们不能扩张..

@R_301_5087@批处理,在嵌套循环内设置一个variables

如果/ then / elseif在bash中工作,如何嵌套?

在我的程序中分配统一的内存。 运行后,它会抛出CUDA错误:内存不足,但仍然有空闲的内存

执行多个batch file后,同时完成batch file

看起来像变量定义有一个词典依赖关系。

@R_301_5087@按字典顺序扩展并填充环境变量(:-O)

你只能使用你的变量,变量“按字典顺序”低于你的变量。

示例:以下定义:

VAR_01=1 VAR_02=%VAR_01%-2 VAR_03=%VAR_02%-3

产生

VAR_01 is 1 VAR_02 is 1-2 VAR_03 is 1-2-3

VAR_01=1 VAR_02=%VAR_03%-2 VAR_03=%VAR_01%-3

产生

VAR_01 is 1 VAR_02 is -2 VAR_03 is 1-3

VAR_02展开时,由于VAR_03未定义。

是的,这让我疯狂。 完整的复制:

系统属性,环境变量,设置如下:

one = c: two = %ONE%two three = %TWO%three

然后单击确定,然后运行cmd。 以下是我所看到的:

C:>set one one=C: C:>set two two=C:two C:>set three three=%TWO%three

这个链接解释了Vista,但没有提到它发生在Win7上。 http://support.microsoft.com/kb/911089

…乔纳斯

你是否已经将所有需要的变量保存在系统变量中? 因为为了扩大价值,系统必须对所有需要的变量有一个“永久的”记忆。

如果在命令行上连续执行所有这些 *** 作,只需说出X=something和Y=%X%;else ,当将路径设置为PATH=%PATH%;%Y% ,shell将扩展值在保存PATH的新值之前的所有变量; 但只要关闭“命令提示符”窗口,系统就会完全忘记%X%和%Y%。

但是,如果使用“系统属性”控制面板将PATH设置为包含未展开的变量,那么在重新启动时,所有这些变量都必须以系统变量的形式存在,否则将无法展开。

为确保您将所有变量保存在系统中,以便在重新引导后仍然存在,请使用系统属性控制面板或SETX.EXE命令。 如果您要在系统PATH中使用它们(不仅仅是您的用户帐户的路径),那么您将需要使用SETX /MX=blah或系统属性| 环境变量选项卡,标记为“系统变量”。

我已经成功摆脱了百分号:

GLEW=%%THIRD_PARTY_ROOT%%GLEW THIRD_PARTY_ROOT=C:devthird-party C:>set GLEW GLEW=C:devthird-partyGLEW

从@R_301_5087@环境变量窗口查看变量时,它将显示为

GLEW | %THIRD_PARTY_ROOT%GLEW

注意:双重百分号只能在脚本中使用。 如果在命令行上使用,请使用脱字符转义符(例如GLEW=^%THIRD_PARTY_ROOT^%GLEW )。

总结

以上是内存溢出为你收集整理的Windows环境variables嵌套限制?全部内容,希望文章能够帮你解决Windows环境variables嵌套限制?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1289070.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存