gpt4 book ai didi

windows - 如何仅为当前操作系统 session 设置变量

转载 作者:可可西里 更新时间:2023-11-01 14:43:51 25 4
gpt4 key购买 nike

setx 永久修改环境变量。
set 仅使变量在批处理脚本运行期间可用。
有什么方法可以设置变量以保持其值直到系统重新启动?
例如。在我的批处理文件中,我正在检查变量是否设置如下:

if %MYVAR% == 1 (
<block>
)

最佳答案

@ECHO Off
IF NOT EXIST q25244121.org GOTO done
:: reset to original
FOR /f "tokens=1*delims==" %%a IN (q25244121.org) DO (
IF DEFINED %%a FOR /f "tokens=1*delims==" %%p IN ('set %%a') DO (
IF "%%a"=="%%p" IF "%%b" neq "%%q" SET "%%a=%%b"
)
)
:: Delete if not originally defined
FOR /f "tokens=1*delims==" %%p IN ('set') DO (
FINDSTR /L /i /c:"%%p=" q25244121.org >NUL
IF ERRORLEVEL 1 SET "%%p="
)

:done
:: Record current settings
set>q25244121.org

EXIT /b

这可能对您有用。您需要将 CAPS 中的 SET 指令更改为 SETX。毫无疑问,临时文件也需要放在用户名是您要使用的名称的一部分的文件中。

如果您要将此批处理包含在您的启动目录中,那么它应该恢复上次保存的环境变量值。

因此,在首次登录时,会存储当前变量的值。在随后的登录中,环境将恢复为上次存储的环境,无论是否执行了 setx

但是您需要更改程序。这将恢复到已知状态。如果你真的想setx一个值或安装一些软件来添加新的环境变量值或更改现有的值(PATH 在这里是最喜欢的)那么你需要首先运行此例程,进行更改,删除保存文件并重新运行此例程。尴尬,我承认 - 但这是一种实现方式。

哦 - 记得在 setx 之后set 你的变量。您甚至可以将 setxX 批处理写入 setx,然后 set(反之亦然)所需的变量。

关于windows - 如何仅为当前操作系统 session 设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25244121/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com