如何在Batch-File中获取文件变量

时间:2018-05-31 20:14:39

标签: batch-file variables command

让我们想象一下Batch游戏会在file.bat文件中保存您的进度,当我们编辑该文件时:

- rpmbuild --define "_topdir `pwd`" --define "_version '$BUILD_VERSION'" --define "_release '$BUILD_RELEASE'" -bb ./mydirectory/myspecfile.spec

我在批处理文件中使用了此命令,但它没有工作:

set Health=100
set Sword=Gold

它留空。

但是如果我制作了一个像上面这样的文件但删除了for /f "eol=- delims=" %%a in (file.bat) do set "%%a" echo Your health is %Health% echo Your sword is made of %Sword% (只有Health = 100而Sword = Gold没有设置),它会起作用并给我变量Health和Sword,但是当{{1添加它没有工作,如果有人知道解决方案,请告诉我并谢谢!

我想要一个给我变量的命令我不想从文件中删除set命令,因为如果我这样做,那么保存bat文件的游戏就会得到从文件中提取变量时损坏,以便在离开游戏的地方继续。

1 个答案:

答案 0 :(得分:0)

游戏生成提示:

如果您保留一个字符作为变量的前缀 - 您想要保存(例如,我想要保存/重新加载的所有变量都以#开头),那么您只需要保存

set #>"mygamefile.txt"

你需要重新加载游戏

for /f "usebackqdelims=" %%a in ("mygamefile.txt") do set "%%a"

要删除所有#变量(在重新加载游戏之前有用),请使用

for /f "delims==" %%a in ('set # 2^>nul') do set "%%a="