::══代码开始══决不要复制此行═════
@echo off&setlocal enabledelayedexpansion
more +9 <%0 >>temp.txt
for /f "delims== tokens=1,2" %%a in (temp.txt) do (
set IsNull=false
for /f "skip=4" %%c in ('reg query "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment\"') do (
echo %%a|find /i "%%c"&&set IsNull=true)
if not !IsNull!==true (
reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment" /v %%a /t REG_SZ /d %%b /f))
del temp.txt /q/f &pause&exit
UGII_BASE_DIR=E:\UG6.0
UGII_LANG=simpl_chinese
UGII_ROOT_DIR=E:\UG6.0\UGII\
UGS_LICENSE_SERVER=28000@chongtian
::══代码结束═决不能复制此行敏虚══════
使用说明:
1、因为涉及导出文本,请不要复制提示不能复制的代码,保证“@echo off&setlocal enabledelayedexpansion”这句话处在批处理文件的第一行,代码末尾也不要添旅或加任何东西,保证“UGS_LICENSE_SERVER=28000@chongtian”处于最后一行。
2、请直复制我给的代码拆拿伍使用,不能删减,否则会失效。
在bat中设简早猛置的变量,是局部变量,只在这个bat中有用,只在所在睁辩的cmd窗口中有用,在其他的cmd中可以调用系统变量,而不能调用其他cmd(bat)窗口的局部变量,即便那个cmd窗口还没有关闭。如果想在bat里设置变量,并添加到系统变量中,可以修改注册表,方便的话可通过第三方程序,如 setx.exe
setx 的一点信息:
这个命拦桥令行工具提供了一种批量修改环境变量的方法,同时不需要使用任何编程方法或者是脚本。此外,除了可以获得变量和值之外还可以跟注册表的值挂上关系。在2000中除了setx.exe之外,其他没有任何一种命令行工具可以直接设置系统变量值。只有通过控制面板和注册表编辑器才能够设置。如果有人说可以用set命令的话, 实际上这个CMD的内部命令只能够设置当前控制台窗口的用户环境变量。 setx允许你通过Command Line Mode,Registry Mode,File Mode,这三种模式来设置环境变量。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)