windows 批处理设置环境变量
windows通过批处理设置环境变量
CreateTime--2017年8月4日11:28:11
Author:Marydon
参考链接:https://wenku.baidu.com/view/ae132fa103d276a20029bd64783e0912a2167c11.html
一、系统变量
1.添加系统变量
1.1 设置变量值为路径
举例:设置JAVA_HOME环境变量
方式一:变量值使用绝对路径
@echo off :: 设置JDK环境变量JAVA_HOME wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="D:\ProgramFiles(x86)\Java\jdk1.7.0_79" echo %JAVA_HOME% pause
方式二:变量值使用相对路径
@echo off :: 设置JDK环境变量JAVA_HOME wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%~dp0jdk1.7.0_79" echo %JAVA_HOME% pause
将上面代码复制到txt文件中,路径改成你的jdk安装路径,保存后,名称随意(如:JAVA_HOME),双击运行-->win+r-->输入sysdm.cpl-->高级-->环境变量-->在系统变量中即可看到
构成:
name用于指定环境变量名称,username用于指定环境变量的属性:临时变量/系统变量,VariableValue用于指定环境变量所对应的值,都是固定用法
区别:
方式一对于Java程序的安装路径的要求比较高,即变量值对应的值必须与Java的安装路径完全一致,但是对于该bat文件存放在哪个位置无关;
方式二的%~dp0表示批处理文件所在的文件夹的路径,即:D:\ProgramFiles(x86)\Java;
方式二对于Java程序的安装路径没有要求,但是对于该bat文件存放位置有很大要求,该bat文件存放在Java文件夹下,
所以JAVA_HOME="%~dp0jdk1.7.0_79",“%~dp0”和“jdk1.7.0_79”之间不用加“\”;
如果还是不明白,请自行百度绝对路径与相对路径的区别
1.2 设置变量值为死值
举例:设置PLSQL的环境变量NLS_CHARACTERSET和NLS_LANG
@echo off :: 设置PLSQL的环境变量NLS_CHARACTERSET wmic ENVIRONMENT create name="NLS_CHARACTERSET",username="<system>",VariableValue="AL32UTF8" echo %NLS_CHARACTERSET% :: 设置PLSQL的环境变量NLS_LANG wmic ENVIRONMENT create name="NLS_LANG",username="<system>",VariableValue="AMERICAN_AMERICA.AL32UTF8" echo %NLS_LANG% pause
保存成bat文件后,双击运行即可。
2.删除环境变量
@echo off :: 删除JDK环境变量JAVA_HOME wmic ENVIRONMENT where name="JAVA_HOME" delete pause
3.修改环境变量
@echo off :: 更新环境变量JAVA_HOME的值 wmic ENVIRONMENT where "name='JAVA_HOME' and username='<system>'" set VariableValue="test" echo %JAVA_HOME% pause
注意:
where 关键字后跟的参数必须是一个连续的字符串,如果参数字符串含有空格需要用英文双引号 " 将参数括起来;
若字符串中有多个限定词,比如既有 name 又有 username,则需要使用 and 关键字来连接这些限定词。
二、临时变量
1.添加临时变量
set password=123
将其保存成bat文件后,双击运行即可
说明:临时变量只在当前窗口有效,一旦关闭,就会消失
三、结语
1.使用 wmic 命令修改环境变量是永久性的,而使用 set 命令修改环境变量是只针对当前命令行环境的临时修改;
2.pause-->终止命令执行,不关闭窗口(可以查看执行结果);exit-->终止命令执行并关闭执行窗口;
3.查看环境变量通常通过DOS窗口通过set +变量名称查看;
4.使用批处理改变环境变量,需要重启资源管理器或注销或重启后才能生效;
5.与其配置JAVA_HOME环境变量,再将其配置到Path中,不如直接在Path添加jdk的环境(编译&运行)
错误方式:在path最前面添加配置
@echo off :: 在Path最前面添加JDK环境(编译&运行) wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%~dp0jdk1.7.0_79\bin;%path%" echo %path% pause
打开进入命令窗口,输入set path,重启前:
重启资源管理器后结果展示:
解说:
如图所示,通过命令的方式实现在Path最前面添加内容虽然实现了,但是会添加两次,因此不推荐使用,想要实现,需要到环境变量管理中手动进行配置
正确方式:在path最后面添加配置
最佳方式:在path最后面添加配置并重启资源管理器
@echo off :: 在Path最前面添加JDK环境(编译&运行) wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%path%;%~dp0jdk1.7.0_79\bin" echo %path% :: 重启资源管理器 taskkill /f /im explorer.exe start explorer.exe exit
效果展示:
转载于:https://www.cnblogs.com/Marydon20170307/p/7284352.html
windows 批处理设置环境变量相关推荐
- windows 11 设置环境变量
windows 11 环境变量设置 打开系统设置 系统>关于>相关链接 高级系统设置 打开系统设置 系统>关于>相关链接 高级系统设置
- windows通过脚本批量设置环境变量(env、path)实战:java环境、scala环境、maven环境、gradle环境、nodejs、git等
windows通过脚本批量设置环境变量(env.path)实战:java环境.scala环境.maven环境.gradle环境.nodejs.git等 目录
- 在package.json里面的script设置环境变量,区分开发及生产环境。注意mac与windows的设置方式不一样...
在package.json里面的script设置环境变量,区分开发及生产环境. 注意mac与windows的设置方式不一样. "scripts": {"publish-m ...
- Linux和Windows下查看、设置环境变量的比较
[一]查看环境变量: 1.windows 查看所有的变量:set 范例:>set 查看某个变量的值:set 环境变量名 范例: >set JAVA_HOME ...
- python 环境隔离 virtualenv workon设置环境变量mac windows
一. mac 1. python virtualenv 环境隔离 下载 pip install virtualenv 创建新的环境目录 mkdir testenv 进入目录 cd testenv 创建 ...
- java环境变量设置优化_Mac/windows配置jdk环境变量-seo优化只选拉一八科技
Mac/windows配置jdk环境变量 Mac配置jdk环境变量 直接双击dmg文件,然后单击[下一步]完成安装.请忽略[配置jdk环境变量]直接跳转到[检查jdk是否安装成功]. Windows配 ...
- windows使用tomcat并设置环境变量
本文目录 官网下载 本地解压 启动服务 设置环境变量 官网下载 网址:https://tomcat.apache.org/ 根据版本对照,尽量选择对应的版本 这里我们选择8.5.xx版本,选择64bi ...
- java基础:JDK的安装及设置环境变量
jdk介绍 JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA ...
- Python 标准库之 os (获取当前目录、读取/设置环境变量、重命名文件、运行shell命令、创建/删除/查看目录文件、判断目录/文件/存在、获取绝对路径、获取文件名、获取换行符、获取路径分隔符)
1. os与sys模块的官方解释如下: os This module provides a portable way of using operating system dependent funct ...
最新文章
- tableau两个不同的图合并_Tableau可视化分析-业务常用图形绘制1
- 【冷知识】获取网页所有的监听事件类型、方法。请认准getEventListeners
- mysql5.7用declare声明失败_我可能会失败,但我不会一直失败。
- JavaScript的代码编写注意事项,建议收藏!
- Nginx代理概述及环境准备
- linux apu 分辨率,编写xorg.conf 简单三行解决Ubuntu分辩率不可调的问题
- java jbutton 禁用_java-禁用后对jButton执行的操作
- E: Some index files failed to download. They have been ignored, or old ones used instead.解决方案
- Reactjs 15.4.X IE11 Objects are not valid as a React child
- J2EE学习笔记-第二章(Web应用初步)
- 360安全卫士对于易量安装打包的可执行程序进行病毒误报
- vs 2015 密钥
- 使用Caffe框架训练模型
- 多边形最大内接圆的简单画法
- 什么是构造函数及定义
- MAC电脑关机卡住黑屏菊花转圈的解决方法
- 洛谷T46780 ZJL 的妹子序列(生成函数)
- java如何用雪花算法批量生成唯一编码(保证位数不过长)?
- 企业应该怎么运营微信公众号?
- antdesign 地图_「Ant Design」原型资源分享
热门文章
- Apache 回应:参与开源不受 EAR 约束
- appinventor广州服务器网页,app inventor服务器
- python手机销售系统结论于心得_python实现手机销售管理系统
- java fuoco 价格_JAVA Fuoco铝合金公路车
- java手机震动_Windows Phone 7 开发 之使手机震动
- java里的进制转换函数_基于Java中进制的转换函数详解
- matlab怎么画园与椭圆,[转载]【MATLAB】画圆和椭圆
- axios 注册拦截器 cdn引用_CDN加速原理
- ipa图片解密 php,ipa文件中的图片获取
- php swoole yaf,swoole和yaf的区别