从设置环境变量谈起——一些常见却有意义的问题

**

为什么要设置环境变量

1.DOS环境下,当输入一条命令执行时,DOS首先判断其是否为系统自带命令(又分为内部命令和外部命令,这里不做讨论),如cd打开某文件夹,dir打开当前文件内所有文件。

2.如果不是,则在当前所在的目录下寻找此命令。

3.若仍然没有,则到系统的PATH路径下寻找此指令所在的文件夹寻找此指令。

4.若还没有,则报错。e.g



经过以上的分析,如果我们想要在DOS环境下直接使用某些命令(不用cd到特定路径下),则可以将这些指令的路径添加到path值下。这样就算当前目录找不到,也可以通过默认的path路径找到继而识别执行。

接下来就是具体的配置步骤:

控制面板——系统与安全——系统——高级系统设置(这是目的,怎么找到的方式随意)——环境变量。

其中的系统变量一旦设置,对每个计算机用户(登陆用户可能不只一个)都有效;而用户变量是只对于特定用户有效。

将想要直接识别的指令所在目录直接加分号;后append在Path之后,搞定。


ps

1.Windows环境变量不区分大小写,classpathCLASSPATH是一样的

2.set path=变量值”的语法形式path默认值的只有一个,即新的变量值会覆盖旧的变量值。为防止这种情况,可以改用“set path=%path%;新的变量值”命令,其中,%path%指的就是原有的变量值,分号“;”用于分隔不同变量值,后加新的变量值。

3.上述在DOS环境下使用set命令只能改变当前path值,一旦DOS窗口关闭path值恢复原样。所以想要永久改变则需要回到Windows环境下改变(我的电脑-属性-高级选项-。。。)。

4.DOS环境下使用“path”命令可以查看当前path值,或者echo %path%

5.系统变量的Path是DOS的查找目录,除此之外,可以将整个环境变量视为一个file,可以使用宏定义的形式。如先定义CLASSPATH=xxx路径; 而Path=%CLASSPATH%\bin;的形式。


所以,总结来看,系统变量 System Variables 正如其名,是属于“系统”的变量,在整个系统运行期间有效,此变量能被系统识别(e.g.Path值中的CLASSPATH值的替换),而PATH的值是系统遇到未能识别的命令时,默认的查找路径,e.g.

if(INSTRUCTION是内部或外部命令)
{...}
else
{
执行 Path\INSTRUCTION;
}

猜你喜欢

转载自blog.csdn.net/ProLayman/article/details/80652324