windows修改环境变量
windows的环境变量有两套:
- 系统的
- 当前用户的
不同的用户可以拥有不同的环境变量,当前用户的环境变量优先级比系统的环境变量优先级高,PATH环境变量比较特殊,它不是替换而是拼接。
在命令行下也可以修改环境变量,但是却需要管理员权限,且此过程可能会被安全软件拦截。下面介绍两个命令:
- set x=13
只在当前会话下有效,这种方式也是最鼓励采用的方式,因为这样能够降低不同软件之间发生冲突的概率。 - setx x 13
注意,这句话中没有等号,setx命令会把x这个环境变量添加到当前用户的环境变量中去,不影响系统环境变量。使用setx /?可以查看这个命令的详情。
setx在用户或系统环境创建或修改环境变量。能基于参数、注册表项或文件输入设置变量。
有三种使用方式:
语法 1:
SETX [/S system [/U [domain]user [/P [password]]]] var value [/M]语法 2:
SETX [/S system [/U [domain]user [/P [password]]]] var /K regpath [/M]语法 3:
SETX [/S system [/U [domain]user [/P [password]]]] /F file {var {/A x,y | /R x,y string}[/M] | /X} [/D delimiters]
参数列表:
/S system 指定要连接到的远程系统。
/U [domain]user 指定应该在哪个用户上下文执行命令。
/P [password] 指定给定用户上下文的密码。如果省略则提示输入。
var 指定要设置的环境变量。
value 指定分配给环境变量的值。
/K regpath 指定变量是基于注册表项的信息而设置的。路径的格式应该是 hive\key...\value。例如 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName。
/F file 指定要使用的文本文件的文件名。
/A x,y 指定绝对文件坐标(线 X,项目 Y)作为在此文件里搜索的参数。
/R x,y string 指定有关“字符串”作为搜索参数的相对文件坐标。
/M 指定应该在系统 (HKEY_LOCAL_MACHINE) 环境中设置此变量。在 HKEY_CURRENT_USER 环境下,默认将设置此变量。
/X 用 x,y 坐标显示文件内容。
/D delimiters 指定其他限定符,如 "," 或 ""。内置分隔符是空格、制表符、回车和换行符。所有ASCII 字符都可作为限定符。限定符的最大数量,包括内置分隔符,是 15。
/? 显示此帮助消息。
注意: 1) SETX 在注册表中将变量写入主机环境。
在本地系统,用此工具创建或修改的变量将在以后的命令窗口可用,但在当前的 CMD.exe 命令窗口。
在远程系统,用此工具创建或修改的变量在下次登录会话可用。
有效的注册表项数据类型是 REG_DWORD,REG_EXPAND_SZ,REG_SZ和 REG_MULTI_SZ。
受支持的配置单元: HKEY_LOCAL_MACHINE (HKLM),HKEY_CURRENT_USER (HKCU)。
限定符区分大小写。
REG_DWORD 的值是从注册表里以十进制格式提取出来的。
示例:
SETX MACHINE COMPAQ
SETX MACHINE "COMPAQ COMPUTER" /M
SETX MYPATH "%PATH%"
SETX MYPATH ~PATH~
SETX /S system /U user /P password MACHINE COMPAQ
SETX /S system /U user /P password MYPATH ^%PATH^%
SETX TZONE /K HKEY_LOCAL_MACHINE\System\CurrentControlSet\
Control\TimeZoneInformation\StandardName
SETX BUILD /K "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows
NT\CurrentVersion\CurrentBuildNumber" /M
SETX /S system /U user /P password TZONE /K HKEY_LOCAL_MACHINE\
System\CurrentControlSet\Control\TimeZoneInformation\
StandardName
SETX /S system /U user /P password BUILD /K
"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\
CurrentVersion\CurrentBuildNumber" /M
SETX /F ipconfig.out /X
SETX IPADDR /F ipconfig.out /A 5,11
SETX OCTET1 /F ipconfig.out /A 5,3 /D "#$*."
SETX IPGATEWAY /F ipconfig.out /R 0,7 Gateway
SETX /S system /U user /P password /F c:\ipconfig.out /X
最新文章
- OWIN系列之自己动手编写中间件
- sass基本用法(转载)
- 使用cachemanager做缓存(Session的缓存)
- 解决 Cannot find OpenSSL&#39;s <;evp.h>;
- bitbucket新建分支
- Loadrunner模拟JSON接口请求进行测试
- ylbtech-dbs-m-QQ邮箱
- 服务器网页GZIP压缩怎么配置
- 【转】C# 中访问修饰符
- LA 4329
- run_command函数分析
- iOS开发中常用的宏
- [转]解读ASP.NET 5 &; MVC6系列(7):依赖注入
- Factorization Machines 学习笔记(三)回归和分类
- [Linux] PHP程序员玩转Linux系列-自动备份与SVN
- Thread(线程)四
- UIButton 中高亮取消
- MyBatis3系列__06查询的几点补充
- 搭建suse11.4内网源服务器
- 利用redis实现分布式锁