-
环境变量
环境变量(environment variables)通常是指在
操做系统中用来指定操做系统运行环境的一些参数,如:
临时文件夹位置和
系统文件夹位置等。
环境
变量是在操做系统中一个具备特定名字的对象,它包含了一个或者多个应用
程序所将使用到的信息。例如Windows和DOS操做系统中的path环境变量,当要求系统运行一个
程序而没有告诉它程序所在的完整路径时,系统除了在
当前目录下面寻找此程序外,还应到path中指定的路径去找。用户经过设置环境
变量,来更好的运行进程。
主要做用
设置参数
环境
变量至关于给系统或用户
应用程序设置的一些参数,具体起什么做用这固然和具体的环境变量相关。好比path,是告诉系统,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在
当前目录下面寻找此程序外,还应到哪些目录下去寻找;再如tc或vc++中,set include=path1;path2; 是告诉
编译程序到哪里去找.h类型的文件;固然不只仅是指定什么路径,还有其它的做用的,如set dircmd=/4 设置一个环境变量的做用是在使用dir
命令时会把/4做为缺省的参数添加到你的dir命令以后,就像你的每一个命令都加了/4参数,它其实是给命令
解释程序command设置的一个环境变量,而且是给dir这个
内部命令设置的。
DWORD
GetEnvironmentVariable(LPCSTR lpName, LPSTR lpBuffer, DWORD dSize),参数lpName是你要求查询的环境
变量的名,lpBuffer是返回你所指定的环境变量的值的,dSize是告诉这个
函数lpBuffer能够存放多少个字节。
分析本地故障时缘由极可能就是由于环境
变量中的默认路径被删除的结果,默认路径一经设置,当前系统若有
程序运行时须要某些DLL或EXE文件,以及Active控件时就会到全部默认路径中去查找,若是在这些
目录中查找到相应的程序则自动加载,查找不到则报告缺乏某某文件的
错误信息。
常见环境变量
WINDOWS系统
%ALLUSERSPROFILE% 局部 返回全部“
用户配置文件”的位置。
%APPDATA% 局部 返回默认
状况下
应用程序存储数据的位置。
%CMDCMDLINE% 局部 返回用来启动当前的 Cmd.exe 的准确
命令行。
%CMDEXTVERSION% 系统 返回当前的“
命令处理
程序扩展”的版本号。
%COMPUTERNAME% 系统 返回
计算机的名称。
%DATE% 系统 返回当前
日期。使用与 date /t
命令相同的格式。由 Cmd.exe 生成。有关 date
命令的详细信息,请参阅 Date。
%ERRORLEVEL% 系统 返回使用过的
命令的
错误代码。一般用非零值表示错误。
%HOMEDRIVE% 系统 返回链接到用户主
目录的本地工做站驱动器号。基于主
目录值的设置。用户主
目录是在“本地用户和组”中指定的。
%HOMEPATH% 系统 返回用户主
目录的完整路径。基于主
目录值的设置。用户主
目录是在“
本地用户和组”中指定的。
%HOMESHARE% 系统 返回用户的共享主
目录的网络路径。基于主
目录值的设置。用户主
目录是在“本地用户和组”中指定的。
%LOGONSEVER% 局部 返回验证当前登陆会话的
域控制器的名称。
%NUMBER_OF_PROCESSORS% 系统 指定安装在
计算机上的处理器的数目。
%OS% 系统 返回
操做系统的名称。Windows 2000 将
操做系统显示为 Windows_NT。
%PROCESSOR_ARCHITECTURE% 系统 返回处理器的芯片体系结构。值: x86,IA64。
%PROCESSOR_IDENTIFIER% 系统 返回处理器说明。
%PROCESSOR_LEVEL% 系统 返回
计算机上安装的处理器的型号。
%PROCESSOR_REVISION% 系统 返回处理器修订号的
系统变量。
%RANDOM% 系统 返回 0 到 32767 之间的任意
十进制数字。由 Cmd.exe 生成。
%SYSTEMDRIVE% 系统 返回包含 Windows XP 根
目录(即系统根目录)的
驱动器。
%SYSTEMROOT% 系统 返回 Windows XP 根
目录的位置。
%TEMP% and %TMP% 系统和用户 返回对当前登陆用户可用的
应用程序所使用的默认临时
目录。有些
应用程序须要 TEMP,而其它应用程序则须要 TMP。
%TIME% 系统 返回当前时间。使用与 time /t 命令相同的格式。由 Cmd.exe 生成。有关 time
命令的详细信息,请参阅 Time。
%USERDOMAIN% 局部 返回包含
用户账户的域的名称。
%USERNAME% 局部 返回当前登陆的用户的名称。
%UserProfile% 局部 返回当前用户的配置文件的位置。
Linux系统
shell环境依赖于多个文件的设置。当shell被调用时,它从两个初始文件读取
命令。/etc/profile包含了
系统变量,它由
系统管理员维护,由系统管理员设置本地系统变量和特殊
命令。普通用户的启动
信息文件($HOME/.bash_project)由各用户本身维护,该文件能够被修改以实现任何特定的
系统初始化。
只有在特定的
状况下才读取profile文件,确切的说是在用户登录的时候。当运行shell脚本或subshell之后,就无须再读profile.虽然全部profile均可选的,可是基本上全部系统都有/etc/profile.
若是定义了
变量ENV且已经传递到环境中,则全部的bash shell都要读取并调用由这个变量制定的文件所包含的
命令。这个文件用来定义全部bash shell的特征,而不只仅是登录到shell。这个文件的典型的名字是$HOME/,bashrc。
当用(
系统管理员)新建用户时,.bash_profile、bashrc和其余公共的环境文件模板将复制到/etc/skel这个
目录下面。能够编辑这些初始化设置,也能够在此
目录下添加附加的文件。
Example:
一个典型的系统profile(/etc/profile):
PATH=$PATH:/usr/qa/tools/bin
ENV==$HOME/.bashrc
ORACLE_SID=qadb
Export PATH ENV ORACLE_HOME ORCAL_SID
Cat /etc/motd
一个典型的用户profile(.bashrc)
PATH=$PATH:$HOME/bin
TEAM=uvt1224 export TERM
cal
一个典型的用户 bashrc file (.bashrc):
alias dir=ls lf='ls -FC'
PSI='$PWS[!]>'
set -o vi
别名和其余bash专用的定义应该放在.bashrc文件(不该在.bash_profile) 中定义;不然会致使找不到某些
命令。
应该记住profile文件和.bashrc文件的区别:两个profile都只在系统启动时被读取一次,而.bashrc在系统启动和每次调用shell的时候都要被读取。
设置方法
在windows
操做系统中能够经过
个人电脑-〉系统属性-〉高级系统设置->环境变量,来设置系统的环境
变量,然而在此设置的环境变量是否在注册表中具备对应的项呢?答案是确定的。而在.net 中提供了一个类来获取系统的环境
变量及其值。
环境
变量分为两类:用户变量与
系统变量,在注册表中都有对应的项。
另外也能够右击
个人电脑——高级系统设置——环境
变量——在
系统变量里有path选项——双击打开——在原有变量的基础上添加英文状态下的分号——而后将路径名输入便可。(切记,不要删除原先的
系统变量,只要用分号隔开,而后添加,最后也要加上分号)
编辑方法
在命令行中对环境变量进行编辑的方法
set
set PATH
set xxx=aa
set xxx=
在某个环境
变量(如PATH)后添加新的值(如d:\xxx)
set PATH=%PATH%;d:\xxx
(注:在dos窗口中以
命令行方式对环境
变量的操做只对当前窗口的应用有效)