set设置Windows环境变量

/****** 参考文档:****************************************

http://blog.chinaunix.net/u1/49551/showart_440707.html

http://space.itpub.net/637736/viewspace-310181

*******************************************************/

/****** 简单了解 ************

一、查看所有环境变量的名称和值:

Linux下:export

Windows下:set

二、根据名称查该环境变量的值:

Linux下:echo $环境变量名

比如:echo $ORACLE_HOME

Windows下:set 环境变量名

设置

在cmd中只对当前的cmd命令窗口有效,关闭当前窗口后,原先的命令设置都不起作用。这就好象word中对格式风格的设置不会影响到下一次文档编辑的效果一样。也就是说,cmd中的设置都是些temp设置,而命令运行窗口初始化path是通过环境和用户环境两者的实现的。

①查看环境变量

C:> set

②查看某一个环境变量

C:>set path

③创建一个环境变量

C:>set xxw=c:winnt

④删除一个环境变量

C:>set xxw=

⑤更改一个环境变量

        如果是追加方式,就可用C:>set xxw=%path%;c:
ew

        如果是完全修改,则可用③

/**************** 择录资料 ***************************

Set

显示、设置或删除环境变量。如果没有任何参数,set 命令将显示当前环境设置。

语法

set [[/a [Expression]] [/p [Variable=]] String]

参数

/a

String 设置成可求值的数字表达式。

/p

Variable 值设置成输入行。

Variable

指定需要设置或修改的变量。

String

指定要与指定变量关联的字符串。

/?

在命令提示符下显示帮助。

注释

使用“故障恢复控制台”中的 set

set 命令具有不同的参数,可从“故障恢复控制台”中获得。

使用特殊字符

字符 <、>、|、& 和 ^ 是特殊的命令外壳字符,在 String 中使用时必须在其前面使用转义符 (^) 或用引号引起来(即,"StringContaining&Symbol")。如果要使用引号将含有一个特殊字符的字符串引起来,则该引号将被设置成环境变量值的一部分。

使用环境变量

使用环境变量可控制某些批处理文件和程序的行为,还可控制 Windows XP 和 MS-DOS 子系统的显示和工作方式。在 Autoexec.nt 文件中,常用 set 命令设置环境变量。

显示当前的环境设置

只键入 set 命令时,将显示当前的环境设置。这些设置通常包含用来帮助查找磁盘上程序的 COMSPEC 和 PATH 环境变量。Windows XP 使用的其他两个环境变量是 PROMPT 和 DIRCMD。

使用参数

指定变量和字符串的值时,指定的变量值将被添加到该环境,而且该字符串与该变量关联。如果环境中已经存在该变量,新的字符串值将替代旧的字符串值。

如果只为 set 命令指定一个变量和一个等号(没有字符串),则与该变量关联的字符串值将被清除(就像变量根本不存在一样)。

使用 /a

下表按优先性从高到低的顺序列出了支持 /a 的运算符。

运算符 执行的操作

< >

分组

* / % + -

算法

<< >>

逻辑移位

&

按位“和”运算

^

按位“异或”运算

|

按位“或”运算

= *= /= %= += -= &= ^= |= <<= >>=

分配

,

表达式分隔符

如果使用逻辑 (&& ||) 或模块 (%) 运算符,请使用引号将表达式字符串引起来。表达式中的非数字字符串将被视为环境变量名,其值将转化成数字然后才进行处理。如果指定当前环境中没有定义的环境变量名,将会分配零值,允许您对环境变量进行算术运算,而不需要使用 % 检索值。

如果从命令脚本外的命令行运行 set /a,则会显示该表达式的最终值。

数值是指十进制的数字,在前缀加 0× 则表示十六进制数字,加 0 则表示八进制数字。因此,0×2 与 18 相同,也与 022 相同,八进制表示法可能会引起混淆。例如,08 和 09 不是有效数字,因为 8 和 9 不是有效的八进制数字。

使用 /p

要求包含提示字符串。

支持延迟的环境变量扩展

已经添加延迟的环境变量扩展支持。默认情况下禁用该支持,不过可使用 cmd /v 启用或禁用它。

使用命令扩展

启用命令扩展(默认)并单独运行 set 时,将显示当前所有的环境变量。如果使用一个值来运行 set,则会显示与该值匹配的变量。

在批处理文件中使用 set

创建批处理文件时,可以使用 set 命令创建变量,然后像使用编号变量 %0%9 一样使用这些变量。另外,也可以使用 %0%9 变量作为 set 命令的输入。

从批处理文件调用 set 变量

从批处理文件调用变量值时,必须将该值用百分号 (%) 括起来。例如,如果批处理程序创建了一个环境变量 BAUD,则可以在命令行中键入 %baud%,将与 BAUD 关联的字符串作为可替换参数使用。

示例

要设置名为 TEST^1 的环境变量,请键入:

set testVar=test^^1

要设置名为 TEST&1 的环境变量,请键入:

set testVar=test^&1

Set 将变量值设置成等号 (=) 后的内容。如果键入:

set testVar="test^1"

将得到如下结果:

testVar="test^1"

要设置名为 INCLUDE 的环境变量,使字符串 C:Inc(驱动器 C 上的 Inc 目录)与该变量关联,请键入:

set include=c:inc

然后,可以通过用百分号 (%) 将名称 INCLUDE 括起来,从而在批处理文件中使用字符串 C:Inc。例如,可能在批处理文件中包含以下命令,以便可以显示与 INCLUDE 环境变量关联的目录内容。

dir %include%

处理此命令时,字符串 C:Inc 将替代 %include%

另外,还可以在批处理程序中使用 set,将新目录添加到 PATH 环境变量中。例如:

@echo off

rem ADDPATH.BAT adds a new directory

rem to the path environment variable.

set path=%1;%path%

set

启用命令扩展(默认)并使用一个值来运行 set 时,则会显示与该值匹配的变量。例如,如果在命令提示符下键入 setp,将得到如下结果:

Path=C:WINNTsystem32;C:WINNT;C:WINNTSystem32Wbem

PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH

PROCESSOR_ARCHITECTURE=x86PROCESSOR_IDENTIFIER=x86

Family 6 Model 8 Stepping 1, GenuineIntel

PROCESSOR_LEVEL=6PROCESSOR_REVISION=0801

ProgramFiles=C:Program Files

PROMPT=$P$G

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>