Windows XP环境变量


2

我认为我的环境变量中的PATH不能正常工作,并且想问一些关于环境变量的问题。

  1. 用户变量和系统变量之间有什么区别?什么时候应该使用一个?如果您为用户和系统提供相同的变量,该怎么办?没关系,因为系统变量包含所有用户?

  2. 我正在尝试使用快捷方式使我的PATH更清洁。例如,我设置了我的 JAVA_HOMEC:\Program Files\Java\jdk1.6.0_25\bin 然后 PATH%JAVA_HOME%\bin。但是,当我输入时 "echo %PATH%" 在cmd中,它仍然显示 %JAVA_HOME%\bin。我应该担心事实并非如此 "C:\Program Files\Java\jdk1.6.0_25\bin"

  3. 如果我想检查我的路径中是否存在xml,我该如何验证?

  4. 由于某些程序不喜欢环境变量中的空格,因此建议使用C:\ Progra~1 \而不是C:\ Program Files \,如下所示: http://ist.berkeley.edu/as-ag/technology/howto/install-java-sdk-win.html 这样做的程序是什么?我从哪里开始休息并添加~1。总是1吗?

谢谢!

Answers:


2
  1. 用户登录系统时会合并用户和系统路径。如果没有用户登录,则%PATH%变量将仅反映系统路径。

    • 用户变量是基于每个用户配置的,仅在该特定用户登录时生效。

    • System变量适用于系统上的所有用户。各种Windows目录和Java子系统以及应该应用于所有用户的其他目录都设置为系统路径的一部分。

  2. 您不应该这样做,因为所有程序可能都不支持它。只需指定大多数程序所期望的完整路径,您应该没问题。

  3. %PATH%变量中应该没有XML,因为 <> 在XML中广泛使用的字符是无效的目录变量。

  4. 一些旧的DOS程序可能会遇到此问题,但自Windows XP以来,我没有遇到路径元素中的空格问题。只需确保您指定的包含目录名称中的空格的每个路径都包含在引号内。您引用此文档的文档似乎已经过时,因为它讨论了Java v1.5(Java v1.6已经存在很多年了,许多人预计Java v1.7很快就会发布)。

    • 名称并不总是缩短为8.3,后缀为〜1,文件名部分终止。例如,在64位Windows上,您可以在DOS提示符下键入“Dir C:\ PRO *”,您将看到至少两个条目(“Program Files”和“PROGRA~2”通常为“PROGRA~1”) “Program Files(x86)”)。

2
  1. 用户变量仅在用户运行时存在,并且只能在用户上下文中运行的进程访问。另一方面,每个用户都可以访问系统变量。

  2. (当我第一次写作时,我并不是100%肯定,但我刚刚为你测试了这个并重做了这个答案!)。变量在被调用时被访问。我做了以下测试:

    set testing=c:\test
    set path=%testing%
    path
    -----result-----
    > PATH=c:\test
    

我还通过创建一个名为的环境变量重新创建了您的步骤 testing 然后设置我的路径 %testing%。我再次进入命令提示符,当我输入路径时,我也得到了相同的信息

    PATH=c:\test

所以,看起来这应该工作正常。进一步检查,这是微软和其他供应商似乎做的事情 - 有很多情况 %systemroot% 在其他地方定义的变量的路径中定义。

3。没有简单的方法,Path是一个旧的DOS命令,用于在文件夹外运行可执行文件和命令。虽然如果你想要命令行访问不是很有帮助,试试看一下像这样的工具 一切 这可以使文件很容易到达!

4. 我所能做的就是重复@Randolf Richardson的答案...... 6个字符+ ~1 (每个文件夹增加一个)并尝试将带空格的名称放在引号中。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.