Batch file 如何在批处理中获得持久变量?
我想知道如何使用批处理来获得一个持久变量,并将其部署在一个环境中,在这个环境中,我无法安装额外的软件,而不会产生很大的开销Batch file 如何在批处理中获得持久变量?,batch-file,Batch File,我想知道如何使用批处理来获得一个持久变量,并将其部署在一个环境中,在这个环境中,我无法安装额外的软件,而不会产生很大的开销 我想检测它是否是第一次打开。如果是,它将首先将变量设置为,,然后运行一行设置的代码,然后将变量更改为打开。我有什么办法能做到这一点,还是不可能?恐怕我不明白你说的“原子”这个词是什么意思。。。但是,我认为下面的代码可以满足您的要求: @echo off setlocal call :InitAtomicVar if "%atomic%" equ "First" (
我想检测它是否是第一次打开。如果是,它将首先将变量设置为,,然后运行一行设置的代码,然后将变量更改为打开。我有什么办法能做到这一点,还是不可能?恐怕我不明白你说的“原子”这个词是什么意思。。。但是,我认为下面的代码可以满足您的要求:
@echo off
setlocal
call :InitAtomicVar
if "%atomic%" equ "First" (
echo This is the first time this program run!
echo set "atomic=Opened">> "%~F0"
)
echo Do the rest of program business here...
goto :EOF
rem The next lines *must be* the last lines in this file!
:InitAtomicVar
set "atomic=First"
在这种方法中,程序在第一次运行时向自身添加一行,这样下次运行时就不会重复初始化步骤。我想你的意思是“持久”,而不是“原子”。编辑问题时,不需要编辑标记——编辑历史记录始终是公开的,因此,更重要的是要让编辑后的文章流畅,并尽可能清楚地了解被问到的问题,而不是让人们清楚地知道什么是在什么时候编辑的——任何想知道历史的人都可以阅读这些差异。(通常,在答案出现后,修改问题的含义是不受欢迎的,建议是提出一个新的问题,以避免使先前的答案无效——但由于你唯一正确地猜测了自己的真实意图,所以从“原子”改为“持久”是一个不错的选择)。好的,谢谢你,查尔斯。