通过setlocal命令,可以更改本地环境,而不会影响任何其他内容。
查看英文版
1 setlocal 运行系统环境
2 setlocal 语法
3 setlocal 示例
Windows xp
Windows vista
Windows 2000
Windows 7
Windows 8
Windows 10
MS-DOS 5.0 及以上版本
Windows NT
开始在批处理文件中本地化环境更改。发出SETLOCAL后所做的环境更改在批处理文件中是本地的。必须发出ENDLOCAL才能恢复以前的设置。到达批处理脚本的末尾时,将对该批处理脚本发出的所有未完成的SETLOCAL命令执行隐式ENDLOCAL。
SETLOCAL
如果启用了命令扩展,则SETLOCAL更改如下:
SETLOCAL批处理命令现在接受可选参数:
ENABLEEXTENSIONS / DISABLEEXTENSIONS |
启用或禁用命令处理器扩展。有关 详细信息,请参见CMD。 |
ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION |
启用或禁用延迟的环境变量扩展。看到SET /?有关详细信息。 |
这些修改将持续到匹配的ENDLOCAL命令为止,无论它们在SETLOCAL命令之前的设置如何。
如果给定参数,SETLOCAL命令将设置ERRORLEVEL值。如果给出两个有效参数之一,则为零;否则,为零。您可以使用以下技术在批处理脚本中使用它来确定扩展是否可用:
VERIFY OTHER 2>nul SETLOCAL ENABLEEXTENSIONS IF ERRORLEVEL 1 echo Unable to enable extensions
上面的示例之所以有效,是因为在旧版本的CMD.EXE中,SETLOCAL不会设置ERRORLEVEL值。带有错误参数的VERIFY命令会将ERRORLEVEL值初始化为非零值。
查看英文版
SETLOCAL在批处理文件中运行时,setlocal命令将仅在批处理文件中影响所有环境更改。
另请参见语法中显示的Microsoft上面的示例,以了解可以使用此命令的其他方式
查看英文版
systemroot | systeminfo | sys | switches | sc | subst | start | sort | smartdrv | shutdown | shift | share | sfc | setver | set | scandisk | scanreg | schtasks |
未知的网友